dom 是一个 input type="text"
使用: dom.setAttribute("value","2011"),只能通过 dom.getAttribute("value") 得到 2011
使用: dom.value = 2012,只能通过 dom.value 得到 2012
也就是说: getAttribute 和 setAttribute 是一套, 直接使用属性是一套,两套完成不是一回事。
总结:
1. 如果是自定义属性,那统一使用 getAttribute , setAttribute ,保持浏览器兼容性。
2. 如果是DOM 的属性,直接使用 可以获取最新值。
3. jQuery 底层的方法 $.fn.val() 使用的是 dom.value 属性。
===========
另外,对于 input 标签 如
<input type="text" value="aa">
.getAttribute("value") 和 .value 都可以得到 aa
但是对于
<div value="aa"></div>
.getAttribute("value") 得到 aa
而 .value 得到 undefined
dom.getAttribute('value') 和 dom.value 的区别
时间: 2024-11-08 01:54:48