十一、attr和prop的区别

2019-12-19  本文已影响0人  yuzhan550
attr:是`html`的属性
比如:<input type='text' name='stark'>
name就是`input`的attr

prop: 是`js`对象的属性

<input type="checkbox" name='stark'>
var stark = document.querySeletor("input[type=checkbox]");
stark.setAttribute("checked","qhf1")   // attr
stark.checked = "qhf2"  // prop

在没有动过property时候,attr会同步propserAttribute方法会同时改变prop&attr
如果动过,attr不会同步prop

1.什么是attribute,什么是property

html标签的预定义和自定义属性我们统称为attribute
js原生对象的直接属性,我们统称为property

2.什么是布尔值属性,什么是非布尔值属性

property的属性值为布尔类型的  我们统称为布尔值属性
property的属性值为非布尔类型的  我们统称为非布尔值属性

3.attribute和property的同步关系

非布尔值属性:实时同步
布尔值属性:
    property永远都不会同步attribute
    在没有动过property的情况下
        attribute会同步property
    在动过property的情况下 
        attribute不会同步property

4.用户操作的是property

5.浏览器认的是property

上一篇 下一篇

猜你喜欢

热点阅读