首页 > JavaScript中的特性和属性有什么不一样?

JavaScript中的特性和属性有什么不一样?

在看jquery的时候看到的.
例如:

btn.className = "btn"; 
btn.setAttribute("class", "btn"); 

这两个操作的都是同一个东西, 差别到底在哪里呢?


特性和属性之分是相对于HTML标签来说的,由于以前的浏览器是没有属性和特性区分的,两者取出的值也就是一样的,但是随着发展,出现了一些特殊的值,例如一些布尔值属性,只要写上这个属性名就可以起作用,不论值是多少。

举个例子,一个input标签,添加一个属性<input disabled = "me">,如果你使用getAttribute获得的值属于特性值,结果是me,而通过.disabled获得的值是属性值,结果是true。

这也就是jquery中封装了attr,和prop两个方法的原因。


一个是属性 一个是方法


刚才我理解错题主的意思了……万分抱歉

关于DOM元素的属性和特性,它们之间的区别我觉得这篇文章写的不错:
DOM对象attribute和property的不同

【热门文章】
【热门文章】