欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jQuery中的DOM操作-查找节点

程序员文章站 2022-07-02 17:59:37
•DOM(Document Object Model—文档对象模型):一种与浏览器,平台,语言无关的接口,使用该接口可以轻松地访问页面中所有的标准组件 &b...

•DOM(Document Object Model—文档对象模型):一种与浏览器,平台,语言无关的接口,使用该接口可以轻松地访问页面中所有的标准组件

•DOM 操作的分类:

–DOMCore: DOM Core 并不专属于 JavaScript,任何一种支持 DOM的程序设计语言都可以使用它. 它的用途并非仅限于处理网页, 也可以用来处理任何一种是用标记语言编写出来的文档, 例如: XML

–HTMLDOM: 使用 JavaScript和 DOM为 HTML文件编写脚本时, 有许多专属于 HTML-DOM的属性

–CSS-DOM:针对于 CSS操作,在 JavaScript中,CSS-DOM 主要用于获取和设置 style对象的各种属性

•查找节点:

–查找属性节点:通过 jQuery 选择器完成.

–操作属性节点:查找到所需要的元素之后,可以调用 jQuery对象的attr()方法来获取它的各种属性值

–操作文本节点:通过 text()方法

<!DOCTYPE html>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>Untitled Document</title>
		
		<script type="text/javascript" src="js/jquery-1.7.2.js"></script>
		<script type="text/javascript">
			
			//测试使用 jQuery 操作文本节点, 属性节点. 
			//及查找元素节点
			
			$(function(){
				//1. 操作文本节点: 通过 jQuery 对象的 text() 方法
				alert($("#bj").text());
				$("#bj").text("hi");
				
				//2. 操作属性节点: 通过 jQuery 对象的 attr() 方法. 
				//注: 直接操作 value 属性值可以使用更便捷的 val() 方法. 
				alert($(":text[name='username']").attr("value"));
				$(":text[name='username']").attr("value", "world");
				
			})
		
		</script>
		
	</head>
	<body>
		<p>你喜欢哪个城市?</p>
		<ul id="city"><li id="bj" name="BeiJing">北京</li>
			<li>上海</li>
			<li id="dj">东京</li>
			<li id="se">首尔</li>
		</ul>
		
		<br><br>
		<p>你喜欢哪款单机游戏?</p>
		<ul id="game">
			<li id="rl">红警</li>
			<li>实况</li>
			<li>*飞车</li>
			<li>魔兽</li>
		</ul>
		
		<br><br>
		gender: 
			<input type="radio" name="gender" value="male"/>Male
			<input type="radio" name="gender" value="female"/>Female
	
		<br><br>
		name: <input type="text" name="username" value="hello"/>
		
	</body>
</html>	
<!DOCTYPE html>
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>Untitled Document</title>
		<script type="text/javascript" src="js/jquery-1.7.2.js"></script>
		<script type="text/javascript">
			$(function(){
				//1. 点击所有的 p 节点, 能够弹出其对应的文本内容
				/*
				1. jQuery 对象可以进行隐式迭代: $("p").click(function(){...});
				为选取的所有的 p 节点都添加了 click 响应函数. jQuery 对象本身就是一个 
				DOM 对象的数组
				2. 在响应函数中, this 是一个 DOM 对象. 若想使用 jQuery 对象的方法
				需要把其包装为 jQuery 对象: 使用 $() 把 this 包起来. 
				3. text() 方法时一个读写的方法: 不加任何参数, 读取文本值; 加参数为
				属性节点添加文本值(文本节点) (和 text() 类似的方法: attr(), val())
				*/
				$("p").click(function(){
					alert($(this).text());
					$(this).text("^^" + $(this).text());
					//alert(this.firstChild.nodeValue);
				});
				
				//2. 使第一个 table 隔行变色
				$("table:first tr:even").css("background", "#ffaacc");
				
				//3. 点击 button, 弹出 checkbox 被选中的个数
				$("button").click(function(){
					alert($(":checkbox:checked").length);
				});
			});
		</script>
	</head>
	<body>
		<p>段落1</p>
		<p>段落2</p>
		<p>段落3</p>
		
		<table>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
		</table>
		<br>
		<hr>
		<br>
		<table>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
			<tr>
				<td>第一行</td><td>第一行</td>
			</tr>
		</table>
		
		<input type="checkbox" name="test" />
		<input type="checkbox" name="test" />
		<input type="checkbox" name="test" />
		<input type="checkbox" name="test" />
		<input type="checkbox" name="test" />
		<input type="checkbox" name="test" />
		<button>您选中的个数</button>
	</body>
</html>