以下内容完全等价吗?你使用哪种习语,为什么?
$('#form1 .edit-field :input')
$('#form1 .edit-field').find(':input')
$('.edit-field :input', '#form1')
$(':input', '#form1 .edit-field')
我会使用#2 或#4:
$('#form1 .edit-field').find(':input')
$(':input', '#form1 .edit-field')
以上两者本质上是相同的。当您指定上下文时,这就是在幕后发生的事情:
jQuery( context ).find( selector );
我会避免#1 和#3 的原因是因为它们都比#2/#4 慢得多。
编辑:刚刚做了一个快速测试:
使用您的选择器的 1000 个输入元素:
$('#form1 .edit-field :input') // 55ms
$('#form1 .edit-field').find(':input') // 21ms
$('.edit-field :input', '#form1') // 47ms
$(':input', '#form1 .edit-field') // 18ms
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)