5

我和大多数 web 开发新手一样,在大多数情况下都使用 jQuery,但更多时候我开始使用干净的 js。所以从这里是我的问题:在 jQuery 范围内使用干净的 js 是上帝的做法吗,例如,如果我需要获取元素类,我可以这样做:

jQuery('div#grid a').click(function(event){
    event.preventDefault();
    console.log(this.getAttribute('class'));
    console.log(this.className);
    console.log(jQuery(this).attr('class'));
});

但是最好的方法是什么?

4

3 回答 3

3

最好使用 ,this.className因为它是三者中最快的。这是一个演示,您可以运行它并查看执行速度:jquery attr(class) vs js.className

运行测试后,您可以看到该className属性是最快的。

于 2013-05-06T10:49:45.610 回答
3

是的,在 jQuery 范围内使用干净的 js 是一个很好的做法。因为这是 DOM 的原生工作,而且运行速度更快。

性能测试

于 2013-05-06T10:45:00.147 回答
2

使用本机脚本而不是调用 jQuery 函数来做同样的事情总是可以提高性能。

然而,这种增益对于少量元素来说可能是难以察觉的。因此,权衡变得更简单、更易读的代码与可能不会对 UI 产生太大影响的收益

于 2013-05-06T10:53:33.403 回答