attr和prop的区别?

2020-07-06 15:49发布

3条回答
HUANG
2020-07-06 16:17

    property定义:js原生对象的直接属性,我们统称为property。

    property详解:通过js代码获取的对象(例如:var input=document.getElementByid("#p")),此input对象中的属性称为property(例如此对象中的:alt,className,checked,以及attributes等等)。简而言之,属性就是property。

    attribute定义:html标签的自定义与预定义属性,我们统称为attribute。

    attribute详解:在以下标签中,

   

    预定义(标签自带的)属性有:type,id,value,name等(虽然name没有写在标签上,但此属性标签本来就有),自定义(标签没有,自己定义的)属性有:test。


区别一:attr()会修改标签上的属性(attribute),也可以给标签增添自定义属性,而prop()只修改dom对象的属性(property)。

区别二:修改布尔值属性(例如checked,selected,autofocus)时,attr()可能会失效。

区别三:attr()一般修改自定义属性,prop()一般修改布尔值属性



一周热门 更多>