我一直在开发一个应用程序,前端主要使用 jQuery。
我们依赖页面上存在的某些分类元素,以便我们可以将行为附加到它们。例如:
$('.block').on('click', clickHandler);
其他开发人员之一说我们应该将表示与逻辑分离(我同意)。因为类是用来展示的,他建议使用数据属性:
$('[data-attribute-name~=value]').on('click', clickHandler);
但是,我对这种方法有以下了解:
- 它的性能明显低于基于类的选择器
- HTML 类用于向 DOM 元素赋予语义含义,因此不限于表示用途。
在阅读不引人注目的 javascript时,我没有看到任何特别提及。
[data-attribute]
使用over 类/ID的主要区别是什么?
严格来说是性能/偏好问题吗?