本人使用的是jquery1.6
在做一个Ajax Form的时候使用了 $.attr属性 目的是要使用到通过返回值来改变控件的属性。
在IE下市没有问题的 但是在火狐下却根本不起作用了,
后来经过查阅 发现原来在jquery1.6里面 增加了一个新的方法 prop 。
好处就是
使用prop的时候,返回值是标准属性,true/false,比如$('#checkbox').prop('disabled'),不会返回 “disabled”或者“”,只会是true/false。当然赋值的时候也是如此。如此,我们便统一了所有操作,无论是从语法上还是语义上。
但是 prop也不是到处适用的 下面给出应该在哪些地方适用attr 哪些地方适用prop的列表:
| Attribute/Property | .attr() | .prop() |
|---|---|---|
| accesskey | √ | |
| align | √ | |
| async | √ | √ |
| autofocus | √ | √ |
| checked | √ | √ |
| class | √ | |
| contenteditable | √ | |
| draggable | √ | |
| href | √ | |
| id | √ | |
| label | √ | |
| location ( i.e. window.location ) | √ | √ |
| multiple | √ | √ |
| readOnly | √ | √ |
| rel | √ | |
| selected | √ | √ |
| src | √ | |
| tabindex | √ | |
| title | √ | |
| type | √ | |
width ( if needed over .width() | √ | |
浙公网安备 33010602011771号