距上个版本更新 3.6.1 才过去 4 个多月,jQuery 3.6.2 近日发布了。团队称更新此版本的动力是 Chrome 引入了一些新的选择器。
据介绍,Chrome 最近引入了一些新的选择器,其中影响最大的是:has()
。这是一个受欢迎的新增功能,并且受到 jQuery 团队的欢迎,但是规范的更改意味着:has()
使用了所谓的 “宽容解析 (forgiving parsing)”。本质上,即使:has()
的参数无效,浏览器也不会返回任何结果,而不是抛出错误。
:has()
在包含另一个 jQuery 选择器扩展(例如:has(:contains("Item"))
)或包含自身:has(div:has(a))
的情况下,这是有问题的情况。Sizzle 依靠这样的错误来知道何时信任原生 querySelectorAll
,以及何时通过 Sizzle 运行选择器。
Chrome 团队实现了一种解决方法,在绝大多数情况修复了以前的 jQuery 版本。jQuery 也已经采取了措施,以确保任何宽容的解析不会破坏未来的 jQuery 版本,不过以前的 jQuery 版本仍然会受到影响。
jQuery 是一个快速、小型且功能丰富的 JavaScript 库。通过易于使用的 API(可在多种浏览器中使用),使 HTML 文档的遍历和操作、事件处理、动画和 Ajax 等操作变得更加简单。结合了多功能性和可扩展性,jQuery 改变了数百万人编写 JavaScript 的方式。
Austin Liu 刘恒辉
Project Manager and Software Designer E-Mail:lzhdim@163.com Blog:https://lzhdim.cnblogs.com 欢迎收藏和转载此博客中的博文,但是请注明出处,给笔者一个与大家交流的空间。谢谢大家。 |