<li data-animal="fish">Salmon</li> 和<li animal="fish">Salmon</li> 新出的html5自訂屬性和普通的定義屬性有什麼不同,都是定義屬性。
<li data-animal="fish">Salmon</li>
<li animal="fish">Salmon</li>
1.規範性2.有專門的介面dataset
dataset
如樓上所說,所以屬性的訪問方式不同。
<li data-animal="fish" id="hello">Salmon</li> <li animal="fish" id="hi">Salmon</li>
var hello = document.getElementById("hello"); var hi = document.getElementById("hi"); // 获取id为hello的元素的data-animal属性 console.log(hello.getAttribute("data-animal")); // "fish" console.log(hello.dataset.animal); // "fish" // 获取id为hi的元素的animal属性 console.log(hi.getAttribute("animal")); // "fish"
在IDE裡面, 有data-前綴的不會報警告.
1.規範性
2.有專門的介面
dataset
如樓上所說,所以屬性的訪問方式不同。
在IDE裡面, 有data-前綴的不會報警告.