在看jquery的时候看到的.例如:btn.className = "btn"; btn.setAttribute("class", "btn");这两个操作的都是同一个东西, 差别到底在哪里呢?
1 回答

繁星点点滴滴
TA贡献1803条经验 获得超3个赞
特性和属性之分是相对于HTML标签来说的,由于以前的浏览器是没有属性和特性区分的,两者取出的值也就是一样的,但是随着发展,出现了一些特殊的值,例如一些布尔值属性,只要写上这个属性名就可以起作用,不论值是多少。
举个例子,一个input标签,添加一个属性<input disabled = "me">
,如果你使用getAttribute获得的值属于特性值,结果是me,而通过.disabled获得的值是属性值,结果是true。
这也就是jquery中封装了attr,和prop两个方法的原因。
添加回答
举报
0/150
提交
取消