jQuery遍历后代
在本教程中,您将学习如何使用 jQuery 遍历 DOM 树。
遍历 DOM 树
在逻辑关系中,后代是孩子、孙子、曾孙等。
jQuery 提供了有用的方法,例如 children()
和 find()
,您可以使用这些方法在 DOM 树中向下遍历单个或多个级别,以便轻松查找或获取层次结构中元素的子元素或其他后代。
jQuery children()
方法
jQuery children()
方法用于获取所选元素的直接子元素。
下面的示例将通过在文档就绪时添加类 .highlight
来突出显示 <ul>
元素的直接子元素,即 <li>
。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery children() Demo</title>
<style>
.highlight{
background: yellow;
}
</style>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
$(document).ready(function(){
$("ul").children().addClass("highlight");
});
</script>
</head>
<body>
<div class="container">
<h1>Hello World</h1>
<p>This is a <em>simple paragraph</em>.</p>
<ul>
<li>Item One</li>
<li>Item Two</li>
</ul>
</div>
</body>
</html>
jQuery find()
方法
jQuery find()
方法用于获取所选元素的后代元素。
find()
和 children()
方法类似,只是 find()
方法在 DOM 树中向下搜索多个层级,直到最后一个后代,而 children()
方法仅在 DOM 树中向下搜索单个层级。 下面的示例将在作为 <div>
元素的后代的所有 <li>
元素周围添加边框。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery find() Demo</title>
<style>
*{
margin: 10px;
}
.frame{
border: 2px solid green;
}
</style>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
$(document).ready(function(){
$("div").find("li").addClass("frame");
});
</script>
</head>
<body>
<div class="container">
<h1>Hello World</h1>
<p>This is a <em>simple paragraph</em>.</p>
<ul>
<li>Item One</li>
<li>Item Two</li>
</ul>
</div>
</body>
</html>
但是,如果要获取所有后代元素,可以使用通用选择器。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery find() Demo</title>
<style>
*{
margin: 10px;
}
.frame{
border: 2px solid green;
}
</style>
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
$(document).ready(function(){
$("div").find("*").addClass("frame");
});
</script>
</head>
<body>
<div class="container">
<h1>Hello World</h1>
<p>This is a <em>simple paragraph</em>.</p>
<ul>
<li>Item One</li>
<li>Item Two</li>
</ul>
</div>
</body>
</html>
Advertisements