jQuery中a和b语句之间的区别是什么。
一个
$('#mytable').find('tr td:eq(0)').each(function(){});
B'/强>
$('#mytable').find('tr').find('td:eq(0)').each(function(){});
答案 0 :(得分:4)
语句a将返回表td
中的第一个#mytable
,其中语句b
将返回所有td
的所有第一个tr
元素表#mytable
中的s。
因此,抽象a
将返回0或1 td
,其中b
可以返回n
个td
个元素
$('#mytable').find('tr td:eq(0)').css('color', 'red');
$('#mytable').find('tr').find('td:eq(0)').css('background-color', 'green');

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table id="mytable">
<tr>
<td>1.1</td>
<td>1.2</td>
<td>1.3</td>
</tr>
<tr>
<td>2.1</td>
<td>2.2</td>
<td>2.3</td>
</tr>
<tr>
<td>3.1</td>
<td>3.2</td>
<td>3.3</td>
</tr>
</table>
&#13;
答案 1 :(得分:3)
因为:eq()是一个jQuery扩展而不是CSS规范的一部分,使用:eq()的查询无法利用本机DOM querySelectorAll()方法提供的性能提升。为了在现代浏览器中获得更好的性能,请使用$(“your-pure-css-selector”)。eq(index)。
提及此link