我正在学习 jQuery,我想知道这两个选择器之间有什么区别:
$('#puzzleGrid table tr td img');
和
$('#puzzleGrid').children('table').children('tr').children('td').children('img');
谢谢!
我正在学习 jQuery,我想知道这两个选择器之间有什么区别:
$('#puzzleGrid table tr td img');
和
$('#puzzleGrid').children('table').children('tr').children('td').children('img');
谢谢!
这个children()选择器——正如 Fraicio Matte 所指出的——
第一个将在可用时使用 DOM QSA,这比充满函数调用开销的第二个示例快千万亿倍。
$('#puzzleGrid').children('table').children('tr').children('td').children('img');
非常特定于获取前一个元素的子元素
而这个 -后代选择器
$('#puzzleGrid table tr td img')
将找到具有 id=puzzleGrid.. 的元素的任何“表”后代(下的任何表元素)以及找到的表的任何后代 tr.. 等等。
与第一个等效的是使用>
子选择器
$('#puzzleGrid > table > tr > td > img')