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几乎没有任何缺点.

相关文章

页面搜索关键词突出 // 页面搜索关键词突出 $(function () {...
jQuery实时显示日期、时间 html: <span id=&quot...
jQuery 添加水印 <script src="../../../.....
中文:Sys.WebForms.PageRequestManagerParserErrorExceptio...
1. 用Response.Write方法 代码如下: Response.Write(&q...
Jquery实现按钮点击遮罩加载,处理完后恢复 思路: 1.点击按...