我已经看到John Resig的快速新选择器引擎Sizzle出现在很多地方的消息,但我不知道选择器引擎是什么,也没有任何文章给出解释它是什么。 我知道Resig是jQuery的创建者,Sizzle是Javascript中的东西,但除此之外我不知道它是什么。 那么,什么是选择器引擎?

谢谢!

===============>>#1 票数:50 已采纳

选择器引擎用于基于某种查询(通常是CSS语法或类似的)查询页面的DOM以查找特定元素。

例如,这个jQuery:

$('div')

将搜索并返回页面上的所有<div>元素。 它使用jQuery的选择器引擎来做到这一点。

优化选择器引擎是一个大问题,因为几乎每个使用这些框架执行的操作都基于某种DOM查询。

===============>>#2 票数:19

选择器引擎是一个JavaScript库,它允许您使用某种字符串选择DOM树中的元素来识别它们(想想DOM元素的正则表达式)。 大多数选择器引擎使用CSS3选择器语法的一些变体,例如,您可以编写如下内容:

var paragraphs = selectorengine.select('p.firstParagraph')

使用类firstParagraph选择文档中的所有P元素。

一些选择器引擎也支持XPath的部分实现,甚至一些自定义语法。 例如,jQuery允许您编写:

var checkedBoxes = jQuery('form#login input:checked')

选择文档中登录表单中的所有选中复选框。

===============>>#3 票数:9

选择器引擎是遍历DOM以查找特定元素的一种方法。

内置选择器引擎的示例:

var foo = document.getElementById('foo');

===============>>#4 票数:5

此外,Sizzle是John Resig目前正致力于取代jQuery已经很棒的选择器引擎的引擎。

===============>>#5 票数:2

选择器引擎用于查找文档中的元素,与CSS样式表的方式相同。 目前只有Safari具有内置的querySelectorAll功能。 使用其他浏览器,您必须使用外部JavaScript实现作为LlamaLab Selector或Sizzle。

  ask by pbh101 translate from so

未解决问题?本站智能推荐:

3回复

JavaScript - DOM选择器引擎

有没有像jQuery这样的DOM元素的选择器引擎,它不提供其他扩展方法,如.bind , .css等? 我的意思是,一个选择器只返回找到的元素,仅此而已。 我试图修改jQuery,删除方法只获取返回元素的函数,但是我遇到了错误。 提前致谢!
1回复

我可以使用像sizzle这样的选择器引擎来比较css选择器吗?

这是我的问题:我正在编写一个WordPress插件,该插件可帮助新手CSS作者实时了解CSS如何应用于其主题。 它有一个很好的功能,除了一个,这在我的脑海里是非常重要的。 我想让它们单击一个元素,查看该元素的完整选择器路径(该部分已完成),然后向它们显示它们样式表中的哪些样式适用于它。
1回复

客户端搜索引擎

我想就我目前的头痛得到一些建议。 我一直在研究客户端浏览器的搜索引擎。 我正在构建自定义词汇表项目。 搜索引擎的思想将用于搜索术语,关键字或定义。 这是我对此项目的要求 没有服务器端支持。 客户端总数 仅用于内部网 为非HTML5的浏览器构建 成千
13回复

什么是MVC(模型视图控制器)? [关闭]

我听说MVC(模型视图控制器)这个术语最近被大量的Buzz抛出,但究竟是什么呢?
3回复

嘶嘶作响的选择器引擎错误

我正在尝试使用jQuery和ASP.NET。 我将服务器控件“ ClientID”粘贴到jQuery选择器中,并且从Sizzle选择器引擎收到错误(无错误文本)。 我的选择器看起来像这样... 是可能导致问题的长度? 我已经在客户端代码中多次检查了控件ID,一切似乎都很好。
1回复

寻找有关jQuery选择器引擎内部实现的信息(嘶嘶声)

我正在寻找有关对Sizzle(jQuery)在内部运行选择器的信息。 理想情况下,要么是完成有关不同浏览器或处理方式的撰写/博客文章的人,要么是可以反编译各种浏览器选择器的网站。 具体来说,我有一个团队说我编写的代码将IE7锁定在非常大的数据集上: 并将其更改为: 解决速度问
1回复

jquery验证引擎的时间选择器

我正在使用jquery验证引擎来检查我的时间选择器中的选定时间... 如果我已经选择了一个时间,并且该时间已经显示在输入文本框中,则验证表明该字段仍然为空,必须填写。 所以我尝试再次选择一个时间,之后没有任何验证消息显示,它工作正常。 为什么我必须选择两次时间? 这是代码:
3回复

Javascript选择器引擎和内置函数

我发现了以下有关创建选择器引擎的教程。http://blog.insicdesigns.com/2010/04/creating-your-own-selector-engine/ 在javascript中,我们具有以下功能 getElementById() getEle
1回复

当找不到选择器时,如何扩展jQuery的选择器引擎以警告我?

假设我在尝试查找元素时犯了一个错误,并且输入了错字,例如$('lsdkfj') 。 而不是jQuery向我返回一个空数组,我想在控制台中返回一条错误消息,例如"The selector 'lsdkfj' cannot be found" 。 这样做的最佳方法是什么?
2回复

日期选择器问题

希望您能帮到我。 我一直在模式对话框中使用jquery datepicker。 在开始时出现一些问题(由z-index给出)后,它就可以正常工作。 关键是我的页面内容不断通过div的.innerHTML属性进行修改。 对于这种情况,我通过这样的局部视图加载模式框的内容: 我有一个