适用于jQuery 1.9之前
下面是一些属性和属性的列表,以及在获取或设置它们时通常应该使用哪种方法。这是首选用法,但该.attr()
方法适用于所有情况。
+------------------------------------+------------+-----------+
| Attribute/Property | .attr() | .prop() |
+------------------------------------+------------+-----------+
| accesskey | ✓ | |
| align | ✓ | |
| async | | ✓ |
| autofocus | | ✓ |
| checked | | ✓ |
| class | ✓ | |
| contenteditable | ✓ | |
| disabled | | ✓ |
| draggable | ✓ | |
| href | ✓ | |
| id | ✓ | |
| label | ✓ | |
| location (i.e., window.location) | | ✓ |
| multiple | | ✓ |
| readOnly | | ✓ |
| rel | ✓ | |
| selected | | ✓ |
| src | ✓ | |
| tabindex | ✓ | |
| title | ✓ | |
| type | ✓ | |
| width (if needed over .width()) | ✓ | |
+------------------------------------+------------+-----------+
既不.attr()
也不.prop()
应该用于获取/设置值。改用该.val()
方法(尽管 using.attr(“value”, “somevalue”)
会起作用。
摘要:该.prop()
方法应该用于布尔属性/属性以及html中不存在的属性(例如window.location
)。所有其他属性(您可以在 html 中看到的属性)可以并且应该继续使用该.attr()
方法进行操作。
参考