在jQuery中是否存在.removeProp()的错误,或者我做错了什么?

rkw*_*rkw 4 jquery

列表框中的选定项目将显示在下面的UL中.单击UL中的项目,它将从列表框中删除它并从UL中删除.

重现错误:http://jsfiddle.net/rkw79/mmBKf/2/

  • 在列表框中选择一个项目
  • 点击UL中的该项,它将消失,列表框将显示为未选中
  • 单击列表框中的相同项目

请注意,事件已触发,但未添加该项

现在执行相同的步骤,除了使用.prop('selected','')而不是.removeProp('selected'):http://jsfiddle.net/rkw79/mmBKf/3/

Rig*_*red 16

您需要知道的一切都在文档中.

使用DOM元素或窗口对象的某些内置属性,如果尝试删除属性,浏览器可能会生成错误.jQuery首先将值undefined分配给属性,并忽略浏览器生成的任何错误.通常,只需要删除已在对象上设置的自定义属性,而不是内置(本机)属性.

注意:请勿使用此方法删除本机属性,例如已选中,已禁用或已选中.这将完全删除属性,一旦删除,就不能再次添加到元素.使用.prop()这些属性设置为false代替.