微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jquery-selectors – 在用户脚本中,使用querySelector()和jQuery的$()有什么好处?

用户脚本中使用querySelector()vs jQuery的$()是否有任何优势?我希望该脚本适用于支持用户脚本的所有主流浏览器,因此我对跨浏览器兼容性特别感兴趣.

我开始怀疑这一点,因为我注意到,诚实优秀的Reddit Enhancement Suite包含jQuery作为依赖项,但大多数都坚持使用querySelector()来选择元素和DOM操作的其他基本JavaScript方法.

这只是一个品味问题,还是有理由将jQuery的使用保持在最低限度?

解决方法

使用querySelector()或querySelectorAll()的唯一原因是你不使用jQuery.与高级CSS选择器相比,jQuery选择器更强大,更有可能在浏览器中一致地执行.

也就是说,包括jQuery在内,可能会使简单的脚本变得不必要.它需要在大多数浏览器上使用脚本注入 – 这会破坏沙箱,产生潜在的冲突,并使您的脚本依赖于第三方服务器.
  Here is a cross-browser way to include jQuery that minimizes conflicts. And,if the browser supports local jQuery copies,it doesn’t require a third-party server to always be up/fast.

如果脚本很简单,你可以不费力地避免使用jQuery,那就使用querySelector(). 99%的情况下,您的脚本将适用于所有可脚本化的浏览器.

如果脚本无论如何加载jQuery,请使用jQuery选择器以获得最大的功能和一致性.

请注意,对于除最基本的DOM操作之外的任何操作,jQuery通常都是值得的.对于Firefox Greasemonkey或Chrome Tampermonkey,如果使用@require it,使用jQuery几乎没有任何缺点.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐