JQuery 03 DOM操作

 DOM操作


        1. 内容操作
            1. html(): 获取/设置元素的标签体内容   如:<a><font>内容</font></a>  --> <font>内容</font>
            2. text(): 获取/设置元素的标签体纯文本内容   <a><font>内容</font></a> --> 内容
            3. val(): 获取/设置元素的value属性值

         代码演示:

            

<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script  src="../js/jquery-3.3.1.min.js"></script>
		<script>
			$(function () {
				// 获取myinput 的value值
				let val = $("#myinput").val();
				alert(val);
				//设置 myinput 的value值
				$("#myinput").val("老周");
				// 获取mydiv的标签体内容
				let html = $("#mydiv").html();
				alert(html);
				// 获取mydiv文本内容
				let text = $("#mydiv").text();
				alert(text);
			})
		</script>
	</head>
	<body>
		<input id="myinput" type="text" name="username" value="张三" /><br />
		<div id="mydiv"><p><a href="#">标题标签</a></p></div>
	</body>
</html>


        2. 属性操作
            1. 通用属性操作
                1. attr(): 获取/设置元素的属性
                2. removeAttr():删除属性
                3. prop():获取/设置元素的属性
                4. removeProp():删除属性

                * attr和prop区别?
                    1. 如果操作的是元素的固有属性,则建议使用prop
                    2. 如果操作的是元素自定义的属性,则建议使用attr

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>获取属性</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<script  src="../js/jquery-3.3.1.min.js"></script>
	<style type="text/css">
		 	div,span{
			    width: 140px;
			    height: 140px;
			    margin: 20px;
			    background: #9999CC;
			    border: #000 1px solid;
				float:left;
			    font-size: 17px;
			    font-family:Roman;
			}
			div.mini{
			    width: 30px;
			    height: 30px;
			    background: #CC66FF;
			    border: #000 1px solid;
			    font-size: 12px;
			    font-family:Roman;
			}
			div.visible{
				display:none;
			}
	 </style>

	<script type="text/javascript">
		//入口函数:
		$(function () {
			//获取北京节点的name属性值
			//注:li标签中没有固有属性name,因此用attr()方法
			let name = $("#bj").attr("name");
			alert(name);
			//设置北京节点的name属性的值为dabeijing
			$("#bj").attr("dabeijing");
			//新增北京节点的discription属性 属性值是didu
			$("#bj").attr("discription","didu");
			//删除北京节点的name属性并检验name属性是否存在
			$("#bj").removeAttr("name");
			//获得hobby的的选中状态 选中状态checked为input标签固有属性,使用attr无法获取,只会alert出undefined
			let prop = $("#hobby").prop("checked");
			//false
			alert(prop);
		})
	</script>
	</head>
	 
	<body>
		 <ul>
		 	 <li id="bj" name="beijing" xxx="yyy">北京</li>
			 <li id="tj" name="tianjin">天津</li>
		 </ul>
		 <input type="checkbox" id="hobby"/>
	</body>

</html>




            2. 对class属性操作
                1. addClass():添加class属性值
                2. removeClass():删除class属性值
                3. toggleClass():切换class属性
                    * toggleClass("one"): 
                        * 判断如果元素对象上存在class="one",则将属性值one删除掉。  如果元素对象上不存在class="one",则添加
                4. css():

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>样式操作</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<script  src="../js/jquery-3.3.1.min.js"></script>
	<style type="text/css">
		   .one{
			    width: 200px;
			    height: 140px;
			    margin: 20px;
			    background: red;
			    border: #000 1px solid;
				float:left;
			    font-size: 17px;
			    font-family:Roman;
			}
		 	div,span{
			    width: 140px;
			    height: 140px;
			    margin: 20px;
			    background: #9999CC;
			    border: #000 1px solid;
				float:left;
			    font-size: 17px;
			    font-family:Roman;
			}
			div .mini{
			    width: 40px;
			    height: 40px;
			    background: #CC66FF;
			    border: #000 1px solid;
			    font-size: 12px;
			    font-family:Roman;
			}
			div .mini01{
			    width: 40px;
			    height: 40px;
			    background: #CC66FF;
			    border: #000 1px solid;
			    font-size: 12px;
			    font-family:Roman;
			}
			/*待用的样式*/
			.second{
				width: 300px;
			    height: 340px;
			    margin: 20px;
			    background: yellow;
			    border: pink 3px dotted;
				float:left;
			    font-size: 22px;
			    font-family:Roman;
			}
	 </style>
    <script type="text/javascript">
		//入口函数:
		$(function () {
			//<input type="button" value="采用属性增加样式(改变id=one的样式)"  id="b1"/>
			$("#b1").click(function () {
				$("#one").prop("class","second");
			});
			//<input type="button" value=" addClass"  id="b2"/>
			$("#b2").click(function () {
				$("#one").addClass("second");
			});
			//<input type="button" value="removeClass"  id="b3"/>
			$("#b3").click(function () {
				$("#one").removeClass("second");
			});
			//<input type="button" value=" 切换样式"  id="b4"/>
			//点击切换按钮相当于同时实现"addClass"和"removeClass"的功能
			$("#b4").click(function () {
				$("#one").toggleClass("second");
			});
			//<input type="button" value=" 通过css()获得id为one背景颜色"  id="b5"/>
			$("#b5").click(function () {
				let backgroundColor = $("#one").css("backgroundColor");
				alert(backgroundColor);
			});
			//<input type="button" value=" 通过css()设置id为one背景颜色为绿色"  id="b6"/>
			$("#b6").click(function () {
				$("#one").css("backgroundColor","green");
			});
		})
	</script>
	</head>
	 
	<body>
		 <input type="button" value="保存"  class="mini" name="ok"  class="mini" />
		 <input type="button" value="采用属性增加样式(改变id=one的样式)"  id="b1"/>
		 <input type="button" value=" addClass"  id="b2"/>
		 <input type="button" value="removeClass"  id="b3"/>
		 <input type="button" value=" 切换样式"  id="b4"/>
		 <input type="button" value=" 通过css()获得id为one背景颜色"  id="b5"/>
 		 <input type="button" value=" 通过css()设置id为one背景颜色为绿色"  id="b6"/>
 
		 <h1>有一种奇迹叫坚持</h1>
		 <h2>自信源于努力</h2>
		 
	     <div id="one">
	    	 id为one 
		 </div>
		
		 <div id="two" class="mini" >
	    	   id为two   class是 mini 
		       <div  class="mini" >class是 mini</div>
		</div>
		
		 <div class="one" >
		 	    class是 one 
		       <div  class="mini" >class是 mini</div>
			   <div  class="mini" >class是 mini</div>
		 </div>
		 
		 <div class="one" >
		 	  class是 one 
		       <div  class="mini01" >class是 mini01</div>
			   <div  class="mini" >class是 mini</div>
		</div>

		<span class="spanone">    span
		</span>
	</body>
</html>




        3. CRUD操作:
            1. append():父元素将子元素追加到末尾
                * 对象1.append(对象2): 将对象2添加到对象1元素内部,并且在末尾
            2. prepend():父元素将子元素追加到开头
                * 对象1.prepend(对象2):将对象2添加到对象1元素内部,并且在开头
            3. appendTo():
                * 对象1.appendTo(对象2):将对象1添加到对象2内部,并且在末尾
            4. prependTo():
                * 对象1.prependTo(对象2):将对象1添加到对象2内部,并且在开头


            5. after():添加元素到元素后边
                * 对象1.after(对象2): 将对象2添加到对象1后边。对象1和对象2是兄弟关系
            6. before():添加元素到元素前边
                * 对象1.before(对象2): 将对象2添加到对象1前边。对象1和对象2是兄弟关系
            7. insertAfter()
                * 对象1.insertAfter(对象2):将对象2添加到对象1后边。对象1和对象2是兄弟关系
            8. insertBefore()
                * 对象1.insertBefore(对象2): 将对象2添加到对象1前边。对象1和对象2是兄弟关系

​<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>内部插入脚本</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<script  src="../js/jquery-3.3.1.min.js"></script>
	<style type="text/css">
		 	div,span{
			    width: 140px;
			    height: 140px;
			    margin: 20px;
			    background: #9999CC;
			    border: #000 1px solid;
				float:left;
			    font-size: 17px;
			    font-family:Roman;
			}
			div .mini{
			    width: 30px;
			    height: 30px;
			    background: #CC66FF;
			    border: #000 1px solid;
			    font-size: 12px;
			    font-family:Roman;
			}
			div.visible{
				display:none;
			}
	 </style>
	 <script type="text/javascript">
		 $(function () {
			 // <input type="button" value="将反恐放置到city的后面"  id="b1"/>
			 $("#b1").click(function () {
				 //append
				 //$("#city").append($("#fk"));
				 //appendTo
				 $("#fk").appendTo($("#city"));
			 })
			 // <input type="button" value="将反恐放置到city的最前面"  id="b2"/>
			 $("#b2").click(function () {
				 //prepend
				 //$("#city").prepend($("#fk"));
				 //prependTo
				 $("#fk").prependTo($("#city"));
			 })
			 // <input type="button" value="将反恐插入到天津后面"  id="b3"/>
			 $("#b3").click(function () {
				 //after
				 //$("#tj").after($("#fk"));
				 //insertAfter
				 $("#fk").insertAfter($("#tj"));
			 })
			 // <input type="button" value="将反恐插入到天津前面"  id="b4"/>
			 $("#b4").click(function () {
				 //before
				 //$("#tj").before($("#fk"));
				 //insertBefore
				 $("#fk").insertBefore($("#tj"));
			 })
		 })
	</script>
	</head>
	 
	<body>
		<input type="button" value="将反恐放置到city的后面"  id="b1"/>
		<input type="button" value="将反恐放置到city的最前面"  id="b2"/>
		<input type="button" value="将反恐插入到天津后面"  id="b3"/>
		<input type="button" value="将反恐插入到天津前面"  id="b4"/>
		 <ul id="city">
		 	 <li id="bj" name="beijing">北京</li>
			 <li id="tj" name="tianjin">天津</li>
			 <li id="cq" name="chongqing">重庆</li>
		 </ul>

		  <ul id="love">
		 	 <li id="fk" name="fankong">反恐</li>
			 <li id="xj" name="xingji">星际</li>
		 </ul>
		<div id="foo1">Hello1</div>
	</body>
</html>



​

            9. remove():移除元素
                * 对象.remove():将对象删除掉
            10. empty():清空元素的所有后代元素。
                * 对象.empty():将对象的后代元素全部清空,但是保留当前对象以及其属性节点

  

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>删除节点</title>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
	<script  src="../js/jquery-3.3.1.min.js"></script>
	<style type="text/css">
		 	div,span{
			    width: 140px;
			    height: 140px;
			    margin: 20px;
			    background: #9999CC;
			    border: #000 1px solid;
				float:left;
			    font-size: 17px;
			    font-family:Roman;
			}
			div.mini{
			    width: 30px;
			    height: 30px;
			    background: #CC66FF;
			    border: #000 1px solid;
			    font-size: 12px;
			    font-family:Roman;
			}
			div.visible{
				display:none;
			}
	 </style>
    <script type="text/javascript">
	$(function () {
		// <input type="button" value="删除<li id='bj' name='beijing'>北京</li>"  id="b1"/>
		$("#b1").click(function () {
			$("#bj").remove();
		})
		// <input type="button" value="删除city所有的li节点   清空元素中的所有后代节点(不包含属性节点)"  id="b2"/>
		$("#b2").click(function () {
			$("#city").empty();
		})
	})
	</script>
	</head>
	 
	<body>
	<input type="button" value="删除<li id='bj' name='beijing'>北京</li>"  id="b1"/>
	<input type="button" value="删除所有的子节点   清空元素中的所有后代节点(不包含属性节点)"  id="b2"/>

		 <ul id="city">
		 	 <li id="bj" name="beijing">北京</li>
			 <li id="tj" name="tianjin">天津</li>
			 <li id="cq" name="chongqing">重庆</li>
		 </ul>
		 <p class="hello">Hello</p> how are <p>you?</p> 
	</body>
</html>



发布了66 篇原创文章 · 获赞 0 · 访问量 1074

猜你喜欢

转载自blog.csdn.net/smallrain6/article/details/105279263
今日推荐