jQuery中的DOM操作

HTML代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script type="text/javascript" src="../script/jquery-1.10.1.js"></script>
<style type="text/css"></style>
<title>jQueryTest_0301</title>
</head>
<body>
	<p title="选择你喜欢吃的水果">选择你喜欢吃的水果</p>
	<ul>
		<li title="苹果">苹果</li>
		<li title="西瓜">西瓜</li>
		<li title="香蕉">香蕉</li>
		<li title="桔子">桔子</li>
	</ul>
</body>
</html>

 

1.查找节点(元素节点和属性节点)

 

<script type="text/javascript">
	//查找元素节点
	var $li = $("ul li:eq(2)");		//获取<ul>里第2个<li>节点
	var li_txt = $li.text();		//获取第2个<li>节点的文本内容
	//查找属性节点
	var $param = $("p");			//获取<p>节点
	var p_txt = $param.attr("title");//获取属性title的内容
</script>

2.创建节点

<script type="text/javascript">
	var $li_01 = $("<li title='甜橙'>甜橙</li>");//创建一个<li>元素,包含元素结点和文本结点以及属性
	$("ul").append($li_01);
</script>

3.插入节点

 

插入节点方法:

 

append()向每个匹配的元素的内部追加内容
prepend()向每个匹配的元素的内部前置内容
after()向每个匹配的元素之后插入内容
before()向每个匹配元素之前插入内容

jQuery还提供了一些其它的插入方法:appentTo()、prependTo()、insertAfter()、insertBefore()

4.删除节点

jQuery提供了两种删除节点的方法:

● remove()方法:从DOM中删除所有匹配的元素

 

$("ul li:eq(2)").remove();//删除第二个<li>元素

 

● empty()方法:清空匹配元素中所有后代结点

 

$("ul li:eq(2)").empty();

5.复制节点

 

 

<script type="text/javascript">
	$("ul li").click(function(){
		$(this).clone().appendTo("ul");
	});
</script>

6.替换节点

 

● replaceWith():将所有匹配的元素都替换成指定的HTML或者DOM元素

● replaceAll():该方法作用与replaceWith()完全相同,只是颠倒了replaceWith()的操作

 

<script type="text/javascript">
	$("ul li").click(function(){
		var txt = $(this).text();
		$(this).replaceWith("<li><strong>"+txt+"</strong></li>");
	});
</script>

7.包裹节点

 

● wrap():将所有的元素进行单独包裹

● wrapAll():将所有匹配的元素用一个元素包裹起来

● wrapInner():将第一个匹配的元素的子内容(包括文本节点)用其它结构化的标记包裹起来

 

$("p").wrap("<b></b>");//用<b>元素将<p>元素包裹起来

8.属性操作

 

 

<script type="text/javascript">
	var $para = $("p");
	$para.attr("title","你最不喜欢吃的水果?");
	var txt = $para.attr("title");//获得<p>元素属性title
	$para.removeAttr(title");//删除<p>的title属性
</script>

9.样式操作

 

addClass():追加样式

removeClass():移除样式

hasClass():判断是否含有某个样式

toggleClass():切换样式

 

<script type="text/javascript">
	$("ul li:eq(0)").addClass("high");
	$("ul li:eq(1)").addClass("another");//追加样式
	$("ul li:eq(1)").removeClass("another");//移除样式
	$("#changeButton").click(function(){
		$("p").toggleClass("another");
	});
</script>

10.设置和获取HTML、文本和值

● html()方法:读取或设置某个元素中的HTML内容

● text()方法:读取或设置某个元素中的文本内容

● val()方法:设置或获取元素的值,如果元素为多选,则返回一个包含所有选择的值的数组

 

<select id="single">
	<option>选择1号</option>
	<option>选择2号</option>
	<option>选择3号</option>
</select>
<select id="multiple" multiple="multiple">
	<option selected="selected">选择1号</option>
	<option>选择2号</option>
	<option>选择3号</option>
	<option>选择4号</option>
	<option selected="selected">选择5号</option>
</select>
<input type="checkbox" value="check1">多选1</input>
<input type="checkbox" value="check2">多选2</input>
<input type="checkbox" value="check3">多选3</input>
<input type="checkbox" value="check4">多选4</input>
<input type="radio" value="radio1">单选1</input>
<input type="radio" value="radio2">单选2</input>
<input type="radio" value="radio3">单选3</input>

使用val()方法设置选中项:

 

<script type="text/javascript">
	$("#single").val("选择3号");
	$("#multiple").val(["选择2号","选择4号"]);
	$(":checkbox").val(["check2","check3"]);
	$(":radio").val(["radio2"]);
</script>

对于下拉列表框,在jQuery中,val()方法从最后一个选项往前读取,如果选项的value或者text中任意一项符合就会选中。

11.遍历节点

● children()方法:取得匹配元素的子元素集合

● next()方法:取得匹配元素后面紧邻的同辈元素

● prev()方法:取得匹配元素前面紧邻的同辈元素

● siblings()方法:取得匹配元素前、后所有的同辈元素

● closest()方法:取得最近的匹配元素

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值