###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
input.setAttribute("name","sport");
input.name = "123";
一般我们对布尔值操作使用$.prop(),对非布尔值操作使用$.attr();//
2:class的操作(除了classname进行操作)classlist表示的新的
testNode.classList.add("qhf4");
testNode.classList.remove("qhf1");
testNode.classList.toggle("qhf2");
3:自定义属性data-ax-qs="qhf";
testNode.dataset. 对自定义属性进行操作;
4:内容可编辑
contenteditable="true"
例如:<div class="box1" contenteditable="true">
Dfsdfsf//内容区的值可以被编辑
</div>
原文地址:https://www.cnblogs.com/love-life-insist/p/9136524.html