De.Minov Asked:2020-08-24 11:58:46 +0000 UTC2020-08-24 11:58:46 +0000 UTC 2020-08-24 11:58:46 +0000 UTC 为什么自定义属性不好? 772 听说自定义属性不好。 因此,我经常使用一堆data-кастомный атрибут,但我从来没有遇到过上面的话的准确性。 从个人经验来看,我只知道自定义的不会通过验证,仅此而已。 自定义属性会导致什么问题? html 1 个回答 Voted Best Answer OPTIMUS PRIME 2020-08-24T14:18:13Z2020-08-24T14:18:13Z 如果您在一个小页面上使用您的属性,则可能没有什么可担心的。假设你有一个庞大的项目,到处使用你的属性,一年后 - oppa,引入了一个新的 HTML 属性,它与你的匹配)这不太可能,但为了避免这些情况,你会想要添加自己独特的从系列的“前缀”myAttr007-class="..." myAttr007-bubu="..."代替这样的麻烦,标准已经有了现成的data- 另外,如果有条件,data-bubu="100500"那么在 JavaScript 中你可以得到它并通过elem.dataset.bubu, 和来改变 and 的值elem.getAttribute / setAttribute。并更改属性 - 同步更改数据集属性(反之亦然)。您可以使用哪个更方便。并且在个人属性的情况下,有一个单独的属性用这个名字,一个单独的属性......它们不相互依赖,这很不方便: let bubu = document.getElementById('bubu'); console.log(bubu.bubufication); // undefined bubu.bubufication = 100500; console.log(bubu.bubufication); console.log(bubu.getAttribute('bubufication')); // 1 <div id="bubu" bubufication="1">test</div> Ps 未在w3.org上验证
如果您在一个小页面上使用您的属性,则可能没有什么可担心的。假设你有一个庞大的项目,到处使用你的属性,一年后 - oppa,引入了一个新的 HTML 属性,它与你的匹配)这不太可能,但为了避免这些情况,你会想要添加自己独特的从系列的“前缀”
myAttr007-class="..." myAttr007-bubu="..."
代替这样的麻烦,标准已经有了现成的data-
另外,如果有条件,
data-bubu="100500"
那么在 JavaScript 中你可以得到它并通过elem.dataset.bubu
, 和来改变 and 的值elem.getAttribute / setAttribute
。并更改属性 - 同步更改数据集属性(反之亦然)。您可以使用哪个更方便。并且在个人属性的情况下,有一个单独的属性用这个名字,一个单独的属性......它们不相互依赖,这很不方便:Ps 未在w3.org上验证