Javascript $(';.className>;button';)和$(';.className';).children(';button';)之间有什么区别吗?

Javascript $(';.className>;button';)和$(';.className';).children(';button';)之间有什么区别吗?,javascript,jquery,dom,Javascript,Jquery,Dom,在jQuery中,它们之间有什么区别吗 $('.className > button') 及 或者,这些只是得到相同结果的替代语法?与实际结果无关,但第一个语法可以全部卸载到浏览器的内置CSS选择引擎中,而第二个语法需要jQuery做更多的工作,并涉及更多的对象创建和清理。除非您在mousemove处理程序中使用大量元素来执行此操作,否则这不太重要,尽管如此……第一个使用css选择器,第二个使用jQuery函数。这一点很明显……jQuery真的利用了浏览器的css引擎吗?我一直认为CSS

在jQuery中,它们之间有什么区别吗

$('.className > button')


或者,这些只是得到相同结果的替代语法?

与实际结果无关,但第一个语法可以全部卸载到浏览器的内置CSS选择引擎中,而第二个语法需要jQuery做更多的工作,并涉及更多的对象创建和清理。除非您在
mousemove
处理程序中使用大量元素来执行此操作,否则这不太重要,尽管如此……

第一个使用css选择器,第二个使用jQuery函数。这一点很明显……jQuery真的利用了浏览器的css引擎吗?我一直认为CSS选择器是由JS解析的library@fschmengler:如果浏览器提供了
querySelectorAll
,而您没有使用jQuery特定的选择器,如
:eq
:disabled
,则是的,jQuery使用内置引擎,而不是它自己的引擎,因为这样会大大加快速度。如果浏览器没有
querySelectorAll
(不太可能,即使IE8也有),或者如果您使用特定于jQuery的选择器,jQuery只会在必要时返回到Sizzle。Sizzle就是这样。我希望我的信息只是过时了,谢谢更新!
$('.className').children('button')