03_17_JavaWeb||day20_JQuery基础||day20_JQuery基础(选择器:筛选具有相似特征的元素(标签),DOM操作)

今日内容

1. JQuery 基础:
	1. 概念
	2. 快速入门
	3. JQuery对象和JS对象区别与转换
	4. 选择器
	5. DOM操作
	6. 案例

JQuery 基础:

  1. 概念: 一个JavaScript框架。简化JS开发
    • jQuery是一个快速、简洁的JavaScript框架,是继Prototype之后又一个优秀的JavaScript代码库(或JavaScript框架)。jQuery设计的宗旨 是“write Less,Do More”,即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的JavaScript设计模式,优 化HTML文档操作、事件处理、动画设计和Ajax交互。
    • JavaScript框架本质上就是一些js文件,封装了js的原生代码而已
  2. 快速入门
    1. 步骤:
      1. 下载JQuery
        • 目前jQuery有三个大版本:(版本说明)
          • 1.x:兼容ie678,使用最为广泛的,官方只做BUG维护,功能不再新增。因此一般项目来说,使用1.x版本就可以了,最终版本:1.12.4 (2016年5月20日)
          • 2.x:不兼容ie678,很少有人使用,官方只做BUG维护,功能不再新增。如果不考虑兼容低版本的浏览器可以使用2.x,最终版本:2.2.4 (2016年5月20日)
          • 3.x:不兼容ie678,只支持最新的浏览器。除非特殊要求,一般不会使用3.x版本的,很多老的jQuery插件不支持这个版本。目前该版本是官方主要更新维护的版本。最新版本:3.2.1(2017年3月20日)
        • jquery-xxx.js 与 jquery-xxx.min.js区别:
          1. jquery-xxx.js:开发版本。给程序员看的,有良好的缩进和注释。体积大一些
          2. jquery-xxx.min.js:生产版本。程序中使用,没有缩进。体积小一些。程序加载更快
      2. 导入JQuery的js文件导入min.js文件
      3. 使用
        • $其实就是方法对象的名字而已
            var div1 = $("#div1");
            alert(div1.html());
        
  3. JQuery对象和JS对象区别与转换
    1. JQuery对象在操作时,更加方便。
    2. JQuery对象和js对象方法不通用的.
    3. 两者相互转换
      • jq – > js : jq对象[索引] 或者 jq对象.get(索引)
      • js – > jq : $(js对象)【常用】
        <head>
            <meta charset="UTF-8">
            <title>Title</title>
            <script src="../js/jquery-3.3.1.min.js"></script>
        </head>
        <body>
        <div id="div1">div1...</div>
        <div id="div2">div2...</div>
        
        
        <script>
            //使用js获取名称是div的所有html元素对象
            var divs = document.getElementsByTagName("div");
            alert(divs);
            //使divs中的所有div标签体变成"aaa"
            for(var i = 0; i < divs.length; i++){
                //divs[i].innerHTML = "aaa";
        
                //js转jq,来使用jq的方法
                $(divs[i]).html("ccc");
            }
        
            //使用jq获取名称是div的所有html元素对象
            var $div = $("div");
            alert($div);
            //使divs中的所有div标签体变成"aaa",jq方式
            //$div.html("bbb");
        
            //jq转为js,来使用js的方法
            $div[0].innerHTML = "ddd";
            $div.get(1).innerHTML = "eee";
        </script>
        </body>
    
  4. 选择器:筛选具有相似特征的元素(标签)【重点】
    1. 基本操作学习:
      1. 事件绑定(onclick,onsubmit都可以用这个方式)
            <body>
                <div id="div1">div1...</div>
                <div id="div2">div2...</div>
                <input type="button" value="点我" id="b1">
            
            <script>
                //给b1按钮添加单击事件
                //1.获取b1按钮
                $("#b1").click(function () {
                    alert("abc");
                });
            </script>
            </body>
        
      2. 入口函数(dom文档加载完成之后执行该函数中的方法)
        • 前言:比如将script写到标签id的前面时候,就执行不了了(因为都是先加载,后执行)–>所以有时候需要(window.onload)先将html页面加载,这样就可以执行访问了
          • 比如:
              <head>
                  <meta charset="UTF-8">
                  <title>Title</title>
                  <script src="../js/jquery-3.3.1.min.js"></script>
              
                  <!--<script>
                      //这样访问不了
                      $("#b1").click(function () {
                          alert("abc");
                      });
                  </script>-->
                  <script>
                      //html页面加载之后,再去获取就可以了
                      window.onload = function(){
                          $("#b1").click(function () {
                              alert("abc");
                          });
                      }
                  </script>
              </head>
              <body>
                  <div id="div1">div1...</div>
                  <div id="div2">div2...</div>
                  <input type="button" value="点我" id="b1">
              
              </body>
          
        1. JQuery对于入口函数的简单写法
              $(function() {
                  
              });
              
              //如:
              <script>
                  //html页面加载之后,再去获取就可以了
                  $(function() {
                      $("#b1").click(function () {
                          alert("abc");
                      });
                  });
              </script>
          
        2. window.onload和$(function) 区别
          • window.onload只能定义一次,如果定义多次,后边的会将前边的覆盖掉
                <script>
                    window.onload = function(){ //window.onload这个会被第二个顶替掉
                        $("#b1").css("background-color", "red");
                    }
                    window.onload = function(){ //window.onload这个可以执行
                        $("#b1").click(function () {
                            alert("abc");
                        });
                    }
                </script>
            
          • $(function)可以定义多次的
                <script>
                    $(function () { //两个都会执行
                        $("#b1").click(function () {
                            alert("abc");
                        });
                    });
                    $(function () { //两个都会执行
                        $("#b1").css("background-color", "red");
                    });
            
                </script>
            
      3. 样式控制:css方法
        1. 两种写法:
          • $(“#div1”).css(“background-color”,“red”);
          • $(“#div1”).css(“backgroundColor”,“pink”);
            • 好处:可以按ctrl来校验对错
        2. 代码:
              <script>
                  $(function () { //两个都会执行
                      $("#b1").click(function () {
                          alert("abc");
                      });
                  });
                  $(function () { //两个都会执行
                      //$("#b1").css("background-color", "red");
                      $("#b1").css("backgroundColor", "pink");
                  });
              </script>
          
    2. 分类
      1. 基本选择器
        1. 标签选择器(元素选择器)
          • 语法: $(“html标签名”) 获得所有匹配标签名称的元素
        2. id选择器
          • 语法: $(“#id的属性值”) 获得与指定id属性值匹配的元素
        3. 类选择器
          • 语法: $(“.class的属性值”) 获得与指定的class属性值匹配的元素
        4. 并集选择器:
          • 语法: $(“选择器1,选择器2…”) 获取多个选择器选中的所有元素
        • 代码演示:
            	<script type="text/javascript">
        		//<input type="button" value="改变 id 为 one 的元素的背景色为 红色"  id="b1"/>
        		//1.因为<script>在body上面,所以先加入口函数
        		$(function () {
        			$("#b1").click(function () {
        				$("#one").css("backgroundColor", "pink");
        			})
        		})
        		//<input type="button" value=" 改变元素名为 <div> 的所有元素的背景色为 红色"  id="b2"/>
        		$(function () {
        			$("#b2").click(function () {
        				$("div").css("backgroundColor", "red");
        			})
        		})
        		//<input type="button" value=" 改变 class 为 mini 的所有元素的背景色为 红色"  id="b3"/>
        		$(function () {
        			$("#b3").click(function () {
        				$(".mini").css("backgroundColor", "red");
        			})
        		})
        		//<input type="button" value=" 改变所有的<span>元素和 id 为 two 的元素的背景色为红色"  id="b4"/>
        		$(function () {
        			$("#b4").click(function () {
        				$("span, #two").css("backgroundColor", "pink");
        			})
        		})
        	</script>
        
      2. 层级选择器
        1. 后代选择器
          • 语法: $("A B ") 选择A元素内部的所有B元素
        2. 子选择器
          • 语法: $(“A > B”) 选择A元素内部的所有B子元素(只会选择儿子,不会选择孙子)
        • 代码演示:
              <script type="text/javascript">
          		//<input type="button" value=" 改变 <body> 内所有 <div> 的背景色为红色"  id="b1"/>
          		//1.因为<script>在body上面,所以先加入口函数
          		$(function () {
          			$("#b1").click(function () {
          				$("body div").css("backgroundColor", "pink");
          			})
          		})
          
          		//<input type="button" value=" 改变 <body> 内子 <div> 的背景色为 红色"  id="b2"/>
          		$(function () {
          			$("#b2").click(function () {
          				$("body>div").css("backgroundColor", "red");
          			})
          		})
          	</script>
          
      3. 属性选择器(A为标签的名称)
        1. 属性名称选择器
          • 语法: $(“A[属性名]”) 包含指定属性的选择器
        2. 属性选择器
          • 语法: $(“A[属性名=‘值’]”) 包含指定属性等于指定值的选择器
            • !=:不等于
            • ^=:以什么开头的元素
            • $=:以什么结束的元素
            • *=:以什么包含的元素
        3. 复合属性选择器(必须同时符合才可以)
          • 语法: $(“A[属性名=‘值’][]…”) 包含多个属性条件的选择器
            • !=:不等于
            • ^=:以什么开头的元素
            • $=:以什么结束的元素
            • *=:以什么包含的元素
        • 代码演示:
              <script type="text/javascript">
          		 // <input type="button" value=" 含有属性title 的div元素背景色为红色"  id="b1"/>
          		 //1.因为在body上,所以需要先加入口函数
          		 $(function () {
          			$("#b1").click(function () {
          				$("div[title]").css("backgroundColor", "pink");
          			})
          		 })
          		 // <input type="button" value=" 属性title值等于test的div元素背景色为红色"  id="b2"/>
          		 $(function () {
          			$("#b2").click(function () {
          				$("div[title='test']").css("backgroundColor", "pink");
          			})
          		 })
          		 // <input type="button" value=" 属性title值不等于test的div元素(没有属性title的也将被选中)背景色为红色"  id="b3"/>
          		 $(function () {
          			$("#b3").click(function () {
          				$("div[title!='test']").css("backgroundColor", "pink");
          			})
          		 })
          		 // <input type="button" value=" 属性title值 以te开始 的div元素背景色为红色"  id="b4"/>
          		 //^=:匹配以什么开始的元素,,和正则表达式一样的用法
          		 $(function () {
          			$("#b4").click(function () {
          				$("div[title^='te']").css("backgroundColor", "red");
          			})
          		 })
          		 // <input type="button" value=" 属性title值 以est结束 的div元素背景色为红色"  id="b5"/>
          		 //$=:匹配以什么结束的元素,,和正则表达式一样的用法
          		 $(function () {
          			$("#b5").click(function () {
          				$("div[title$='est']").css("backgroundColor", "red");
          			})
          		 })
          		 // <input type="button" value="属性title值 含有es的div元素背景色为红色"  id="b6"/>
          		 //*=:匹配以什么包含的元素,,和正则表达式一样的用法
          		 $(function () {
          			 $("#b6").click(function () {
          				 $("div[title *= 'es']").css("backgroundColor", "red");
          			 })
          		 })
          		 // <input type="button" value="选取有属性id的div元素,然后在结果中选取属性title值含有“es”的 div 元素背景色为红色"  id="b7"/>
          		 $(function () {
          			 $("#b7").click(function () {
          				 $("div[id][title *= 'es']").css("backgroundColor", "red");
          			 })
          		 })
          	</script>
          
      4. 过滤选择器【:两边不能加空格】
        1. 首元素选择器
          • 语法: :first 获得选择的元素中的第一个元素
        2. 尾元素选择器
          • 语法: :last 获得选择的元素中的最后一个元素
        3. 非元素选择器
          • 语法: :not(selector) 不包括指定内容的元素
        4. 偶数选择器
          • 语法: :even 偶数,从 0 开始计数
        5. 奇数选择器
          • 语法: :odd 奇数,从 0 开始计数
        6. 等于索引选择器
          • 语法: :eq(index) 指定索引元素
        7. 大于索引选择器
          • 语法: :gt(index) 大于指定索引元素
        8. 小于索引选择器
          • 语法: :lt(index) 小于指定索引元素
        9. 标题选择器
          • 语法: :header 获得标题(h1~h6)元素,固定写法
        • 代码演示:
              <script type="text/javascript">
          		//1. 因为在body上面,所以需要先写入口函数
          		$(function () {
          			// <input type="button" value=" 改变第一个 div 元素的背景色为 红色"  id="b1"/>
          			$("#b1").click(function () {
          				$("div:first").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变最后一个 div 元素的背景色为 红色"  id="b2"/>
          			$("#b2").click(function () {
          				$("div:last").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变class不为 one 的所有 div 元素的背景色为 红色"  id="b3"/>
          			//class选择器就在前面写.
          			$("#b3").click(function () {
          				$("div:not(.one)").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变索引值为偶数的 div 元素的背景色为 红色"  id="b4"/>
          			$("#b4").click(function () {
          				$("div:even").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变索引值为奇数的 div 元素的背景色为 红色"  id="b5"/>
          			$("#b5").click(function () {
          				$("div:odd").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变索引值为大于 3 的 div 元素的背景色为 红色"  id="b6"/>
          			$("#b6").click(function () {
          				$("div:gt(3)").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变索引值为等于 3 的 div 元素的背景色为 红色"  id="b7"/>
          			$("#b7").click(function () {
          				$("div:eq(3)").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变索引值为小于 3 的 div 元素的背景色为 红色"  id="b8"/>
          			$("#b8").click(function () {
          				$("div:lt(3)").css("backgroundColor", "red");
          			})
          			// <input type="button" value=" 改变所有的标题元素的背景色为 红色"  id="b9"/>
          			//获得标题(h1~h6)元素,固定写法
          			$("#b9").click(function () {
          				$(":header").css("backgroundColor", "red");
          			})
          		})
          	</script>
          
      5. 表单过滤选择器
        1. 可用元素选择器
          • 语法: :enabled 获得可用元素
        2. 不可用元素选择器
          • 语法: :disabled 获得不可用元素
        3. 选中选择器
          • 语法: :checked 获得单选/复选框选中的元素
            • 注:input标签中加上checkbox属性,就可以变成复选框
            • 注:input标签中加上radio属性,就可以变成单选框
        4. 选中选择器
          • 语法: :selected 获得下拉框选中的元素
            • 注:select标签中加上multiple属性,就可以变成多选的下拉框
        • 代码演示:
              <script type="text/javascript">
          		//因为script在body上,所以要先添加入口函数
          		$(function () {
          			// <input type="button" value=" 利用 jQuery 对象的 val() 方法改变表单内可用 <input> 元素的值"  id="b1"/>
          			//类似js中的value()
          			$("#b1").click(function () {
          				$("input[type='text']:enabled").val("aaa");
          			})
          			// <input type="button" value=" 利用 jQuery 对象的 val() 方法改变表单内不可用 <input> 元素的值"  id="b2"/>
          			$("#b2").click(function () {
          				$("input[type='text']:disabled").val("bbb");
          			})
          			// <input type="button" value=" 利用 jQuery 对象的 length 属性获取复选框选中的个数"  id="b3"/>
          			$("#b3").click(function () {
          				alert($("input[type='checkbox']:checked").length);
          			})
          			// <input type="button" value=" 利用 jQuery 对象的 length 属性获取下拉框选中的个数"  id="b4"/>
          			//我们要获取的是下拉列中option的选中个数
          			$("#b4").click(function () {
          				//alert($("select[multiple='multiple'] > option:selected").length);
          				alert($("#job > option:selected").length);
          			})
          		})
          	</script>
          
  5. DOM操作
    1. 内容操作(3个方法)
      1. html(): 获取/设置元素的标签体内容
            //-->之后就是html()获取<a>之后的
            <a><font>内容</font></a>  --> <font>内容</font>
        
      2. text(): 获取/设置元素的标签体纯文本内容
            //-->之后就是text()获取<a>之后的
            <a><font>内容</font></a> --> 内容
        
      3. val(): 获取/设置元素的value属性值
      • 代码演示:
            <script>
        		//因为在body上面,所以需要先写入口函数
        		$(function () {
        			// 获取myinput 的value值
        			//alert($("#myinput").val());
        			// 设置myinput 的value值为李四
        			//$("#myinput").val("李四");
        
        			// 获取mydiv的标签体内容
        			//alert($("#mydiv").html());
        			// 设置mydiv的标签体内容为<a href="">aaaa</a>
        			//$("#mydiv").html("<a href=\"\">aaaa</a>");
        
        			// 获取mydiv文本内容
        			//alert($("#mydiv").text());
        			// 设置mydiv的文本内容为bbbb
        			$("#mydiv").text("bbbb");
        		})
        	</script>
        	
        	<body>
        		<input id="myinput" type="text" name="username" value="张三" /><br />
        		<div id="mydiv"><p><a href="#">标题标签</a></p></div>
        	</body>
        
    2. 属性操作
      1. 通用属性操作(可以操作标签的所有属性)
        1. attr(): 获取/设置(改值或新增)++元素的属性++
          • 设置值时候,写一个键值对就可以了
        2. removeAttr():++删除属性++
        3. prop():获取/设置元素的属性
        4. removeProp():删除属性
        • attr和prop区别?【重点】
          1. 如果操作的是元素的固有属性,则建议使用prop
            • 固有属性就是使用标签中本来就有的属性
          2. 如果操作的是元素自定义的属性,则建议使用attr
        • 代码演示:
              <script type="text/javascript">
          		//因为script在body上面,所以要先写入口函数
          		$(function () {
          			//获取北京节点的name属性值
          			//因为li标签中没有固有的name标签,所以使用attr
          			//alert($("#bj").attr("name"));
          
          			//设置北京节点的name属性的值为dabeijing
          			//$("#bj").attr("name", "dabeijing");
          
          			//新增北京节点的discription属性 属性值是didu
          			//$("#bj").attr("discription", "didu");
          
          			//删除北京节点的name属性并检验name属性是否存在
          			//$("#bj").removeAttr("name");
          
          			//获得hobby的的选中状态
          			//选中状态要用到checked属性(是一个固有属性),所以使用prop
          			alert($("#hobby").prop("checked"));
          		})
          		
          	</script>
          
      2. 对class属性操作
        1. addClass():添加class属性值
        2. removeClass():删除class属性值
        3. toggleClass():切换class属性
          • toggleClass(“one”): [动态切换]
            • 判断如果元素对象上存在class=“one”则将属性值one删除掉。 如果元素对象上不存在class=“one”则添加
        4. css():
        • 代码演示:
              <script type="text/javascript">
          		 //因为script在body上面,所以先写入口函数
          		$(function () {
          			//<input type="button" value="采用属性增加样式(改变id=one的样式)"  id="b1"/>
          			///使用通用属性操作
          			//1. class是固有属性,所以用prop
          			//2. second是一个待用的样式
          			$("#b1").click(function () {
          				$("#one").prop("class", "second");
          			})
          
          			//<input type="button" value=" 使用addClass的方式(改变id=one的样式)"  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"/>
          			$("#b4").click(function () {
          				$("#one").toggleClass("second");
          			})
          
          			//<input type="button" value=" 通过css()获得id为one背景颜色"  id="b5"/>
          			$("#b5").click(function () {
          				alert($("#one").css("backgroundColor"));
          			})
          
          			//<input type="button" value=" 通过css()设置id为one背景颜色为绿色"  id="b6"/>
          			$("#b6").click(function () {
          				$("#one").css("backgroundColor", "green");
          			})
          		})
          	</script>
          
    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):将对象1添加到对象2后边。对象1和对象2是兄弟关系
      8. insertBefore()
        • 对象1.insertBefore(对象2): 将对象1添加到对象2前边。对象1和对象2是兄弟关系
      9. remove():移除元素
        • 对象.remove():将对象删除掉
      10. empty():清空元素的所有后代元素。
        • 对象.empty():将对象的后代元素全部清空,但是保留当前对象以及其属性节点
      • 代码演示:
            <script type="text/javascript">
        		 //因为script在body上面,所以需要先写入口函数
        		 $(function () {
        			 // <input type="button" value="将反恐放置到city的后面"  id="b1"/>
        			 //使用append,B添加到A后面
        			 /*$("#b1").click(function () {
        				 $("#city").append($("#fk"));
        			 })*/
        			 //使用appendTo,A添加到B后面
        			 /*$("#b1").click(function () {
        				$("#fk").appendTo($("#city"));
        			 })*/
        
        			 // <input type="button" value="将反恐放置到city的最前面"  id="b2"/>
        			 //使用prepend,B添加到A前面
        			 /*$("#b2").click(function () {
        				 $("#city").prepend($("#fk"));
        			 })*/
        			 //使用prependTo,A添加到B前面
        			 /*$("#b2").click(function () {
        				$("#fk").prependTo($("#city"));
        			 })*/
        
        			 // <input type="button" value="将反恐插入到天津后面"  id="b3"/>
        			 //使用after,将B添加到A后面(同级关系)
        			 /*$("#b3").click(function () {
        				$("#tj").after($("#fk"));
        			 })*/
        			 //使用insertAfter,将A添加到B后面(同级关系)
        			 /*$("#b3").click(function () {
        				$("#fk").insertAfter($("#tj"));
        			 })*/
        
        			 // <input type="button" value="将反恐插入到天津前面"  id="b4"/>
        			 //使用before,将B添加到A前面(同级关系)
        			 /*$("#b4").click(function () {
        				$("#tj").before($("#fk"));
        			 })*/
        			 //使用insertBefore,将A添加到B前面(同级关系)
        			 /*$("#b4").click(function () {
        				 $("#fk").insertBefore($("#tj"));
        			 })*/
        		 })
        
        	</script>
        	
        	//两个删除的案例
            <script type="text/javascript">
        		//因为script在body上面,所以要先写入口函数
        		$(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>
        
  6. 案例
    1. 案例1:隔行换色
      • 需求:将数据行的奇数行背景色设置为 pink,偶数行背景色设置为 yellow
        • 注:数据行就是不包含表头的行
      1. 分析
        1. 获取奇数行的tr,设置背景色为pink
        2. 获取奇数行的tr,设置背景色为yellow
        • 使用到–>过滤选择器
      2. 代码
            <script>
        		//需求:将数据行的奇数行背景色设置为 pink,偶数行背景色设置为 yellow
        		$(function () {
        			//1. 获取奇数行的tr,设置背景色为pink
        			$("tr:gt(1):odd").css("backgroundColor", "pink");
        			//2. 获取奇数行的tr,设置背景色为yellow
        			$("tr:gt(1):even").css("backgroundColor", "yellow");
        		})
        	</script>
        
      3. 结果
    2. 案例2:全选全不选
      • 需求:需要保证下边的选中状态和第一个复选框的选中状态一致即可
      1. 分析
        1. 获取下边的复选框
        • 使用到–>通用属性操作prop(改变固有属性)
      2. 代码
            <script>
        		//itemSelect为下边复选框的class属性值
        		function selectAll(obj) {
        			//获取下边的复选框
        			$(".itemSelect").prop("checked", obj.checked);
        		}
        	</script>
        
      3. 结果
    3. 案例3:qq表情选择
      • 需求:点击qq表情,将其追加到发言框中
      1. 分析
        1. 给img图片添加onclick事件
        2. 追加到p标签中即可。
        • 使用到–>层级选择器
        • 使用到–>DOM操作中的CRUD操作
        • 点那个img都是this
      2. 代码
            <script>
                //需求:点击qq表情,将其追加到发言框中
                $(function () {
                    //1. 给img图片添加onclick事件
                    //因为是ul下的img所以要用到层级选择器
                    $("ul img").click(function () {
                        //2. 追加到p标签中即可。
                        $(".word").append(this);
                    })
                })
            </script>
        
      3. 结果
    4. 案例4:多选下拉列表左右移动
      • 需求:实现下拉列表选择条目左右移动功能
      1. 分析
        1. 获取右边的下拉列表对象,append(左边下拉列表选中的option)
        2. 追加到p标签中即可。
        • 使用到–>DOM操作中的CRUD操作
        • 使用到–>表单过滤选择器
        • 使用到–>层级选择器
      2. 代码
            <script>
        
        		//需求:实现下拉列表选择条目左右移动功能
        		$(function () {
        			//toRight
        			$("#toRight").click(function () {
        				//append:B->A
        				$("#rightName").append($("#leftName > option:selected"));
        			})
        			//toLeft
        			$("#toLeft").click(function () {
        				//append:A->B
        				$("#rightName > option:selected").appendTo($("#leftName"));
        			})
        		})
        
        	</script>
        
      3. 结果
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狂野小白兔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值