<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" src="jquery-1.11.3.js"></script>
<title></title>
</head>
<body>
文档遍历处理
<button id="test1">文档筛选eq</button>
<button id="test2">文档筛选filter</button>
<button id="test3">文档筛选not</button>
<button id="test4">树遍历children</button>
<button id="test5">树遍历closest</button>
<button id="test6">树遍历find</button>
<ul class="level-1">
<li class="item-i">I</li>
<li class="item-ii">II
<ul class="level-2">
<li class="item-a">A</li>
<li class="item-b">B
<ul class="level-3">
<li class="item-1">1</li>
<li class="item-2">2</li>
<li class="item-3">3</li>
</ul>
</li>
<li class="item-c">C</li>
</ul>
</li>
<li class="item-iii">III</li>
</ul>
<script type="text/javascript">
$("#test1").click(function(event) {
$('li').eq(2).css('background-color', 'red');
})
$("#test2").click(function(event) {
$('li').filter(':even').css('background-color', 'blue');
})
$("#test3").click(function(event) {
$('li').not(':even').css('background-color', 'red');
})
$("#test4").click(function(event) {
$('ul.level-2').children().css('background-color', 'yellow');
})
$("#test5").click(function(event) {
$('li.item-a').closest('ul')
.css('background-color', 'red');
})
$("#test6").click(function(event) {
$('li.item-ii').find('li').css('background-color', 'blue');
})
</script>
</body>
</html>
查找 <li class="item-a"> 的祖先元素,直到 <ul class="level-1">,并将它们设置为红色背景。同时,找到 <li class="item-2"> 的所有类名为 "yes" 的祖先元素,直到 <ul class="level-1">,然户为它们设置蓝色边框:
$("li.item-a").parentsUntil(".level-1")
.css("background-color", "red");
$("li.item-2").parentsUntil( $("ul.level-1"), ".yes" )
.css("border", "3px solid blue");