Alo*_*iel 3 javascript jquery list
我想选择除第一个孩子和所有不包含的li之外的所有li: ab 2
所以,如果我的名单是:
<ul id="list">
<li>1</li>
<li>ab 1</li>
<li>ab 2</li>
<li>ab 3</li>
<li>ab 4</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
这将是:
<ul id="list">
<li>1</li>
<li>ab 2</li>
</ul>
Run Code Online (Sandbox Code Playgroud)
我试过了:
$("#list").find("li:not(:first-child), li:not(:contains('ab 2'))").each(function () {
var current = $(this);
current.css('display', 'none');
}
Run Code Online (Sandbox Code Playgroud)
但是我的所有名单都消失了......
这应该很快:
$("#list li")
.slice(1) // exclude the first
.not(':contains(ab 2)') // exclude all "ab 2"
Run Code Online (Sandbox Code Playgroud)
要删除它们,只需调用.remove()或.hide()最后,无需循环.
这里有一个jsPerf的不同解决方案:http://jsperf.com/single-selector-vs-filter-perf/2
| 归档时间: |
|
| 查看次数: |
248 次 |
| 最近记录: |