JQuery基础

JQuery

JQuery基础

1. 概念

jQuery 是一个 JavaScript 函数库。

jQuery 库包含以下特性:

  • HTML 元素选取
  • HTML 元素操作
  • CSS 操作
  • HTML 事件函数
  • JavaScript 特效和动画
  • HTML DOM 遍历和修改
  • AJAX
  • Utilities
2. 使用方式
  • 下载引用

    <script src="jquery.js"></script>
    
  • 使用cdn

    <head>
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery.min.js">
    </script>
    </head>
    
3. JQuery对象和JS对象区别与转换
  • JQuery对象在操作时,更加方便。
  • JQuery对象和js对象方法不通用的.
  • 两者相互转换
    • jq – > js : jq对象[索引] 或者 jq对象.get(索引)
    • js – > jq : $(js对象)
4. 选择器:筛选具有相似特征的元素(标签)
  1. 基本操作学习:

  2. 事件绑定

    //获取元素

    $("#元素的id").click(function(){
                    alert("abc");
                });
    
  3. 入口函数

    $(function () {
    	           
    });
    

    window.onload 和 (function) 区别
    window.onload 只能定义一次,如果定义多次,后边的会将前边的覆盖掉
    $(function)可以定义多次的。

  4. 样式控制:css方法

    $("#div1").css("background-color","red");
          		$("#div1").css("backgroundColor","pink");
    
  5. 分类

    1. 基本选择器

      • 标签选择器(元素选择器)

        语法: $(“html标签名”) 获得所有匹配标签名称的元素

      • id选择器

        语法: $("#id的属性值") 获得与指定id属性值匹配的元素

      • 类选择器

        语法: $(".class的属性值") 获得与指定的class属性值匹配的元素

      • 并集选择器:

        语法: $(“选择器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="./jq/jquery-3.3.1.min.js"></script>
        	<style type="text/css">
        		 	div,span{
        			    width: 180px;
        			    height: 180px;
        			    margin: 20px;
        			    background: #9999CC;
        			    border: #000 1px solid;
        				float:left;
        			    font-size: 17px;
        			    font-family:Roman;
        			}
        			
        			div .mini{
        			    width: 50px;
        			    height: 50px;
        			    background: #CC66FF;
        			    border: #000 1px solid;
        			    font-size: 12px;
        			    font-family:Roman;
        			}
        			
        			div .mini01{
        			    width: 50px;
        			    height: 50px;
        			    background: #CC66FF;
        			    border: #000 1px solid;
        			    font-size: 12px;
        			    font-family:Roman;
        			}
        			
        			
        			
        	 </style>
        	<script type="text/javascript">
        		$(function(){
        			// <input type="button" value="保存"  class="mini" name="ok"  class="mini" />
        			// <input type="button" value="改变 id 为 one 的元素的背景色为 红色"  id="b1"/>
        			$("#b1").click(function(){
        				alert("123");
        				$('#one').css("backgroundColor","red");
        			})
        			// <input type="button" value=" 改变元素名为 <div> 的所有元素的背景色为 红色"  id="b2"/>
        			$("#b2").click(function(){
        				$("div").css("backgroundColor","red");
        			})
        			// <input type="button" value=" 改变 class 为 mini 的所有元素的背景色为 红色"  id="b3"/>
        			$("#b3").click(function(){
        				$(".mini").css("backgroundColor","red");
        			})
        			// <input type="button" value=" 改变所有的<span>元素和 id 为 two 的元素的背景色为红色"  id="b4"/>
        			$("#b4").click(function(){
        				$("span,#two").css("backgroundColor","red");
        			})
        		});
        		 
        
        	</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=" 改变元素名为 <div> 的所有元素的背景色为 红色"  id="b2"/>
        		 <input type="button" value=" 改变 class 为 mini 的所有元素的背景色为 红色"  id="b3"/>
        		 <input type="button" value=" 改变所有的<span>元素和 id 为 two 的元素的背景色为红色"  id="b4"/>
        		
         
        		 <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">class为spanone的span元素</span>
        		<span class="mini">class为mini的span元素</span>
        		
        
        		<input type="text" value="zhang" id="username" name="username">
        	
        	</body>
        	
        	
        	
        </html>
        
    2. 层级选择器

      • 后代选择器

        语法: $("A B ") 选择A元素内部的所有B元素

      • 子选择器

        语法: $(“A > B”) 选择A元素内部的所有B子元素

    3. 属性选择器

      • 属性名称选择器

        语法: $(“A[属性名]”) 包含指定属性的选择器

      • 属性选择器

        语法: $(“A[属性名=‘值’]”) 包含指定属性等于指定值的选择器

      • 复合属性选择器

        语法: $(“A[属性名=‘值’][]…”) 包含多个属性条件的选择器

      • 案例

        <!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="./jq/jquery-3.3.1.js"></script>
        	<style type="text/css">
        		 	div,span{
        			    width: 180px;
        			    height: 180px;
        			    margin: 20px;
        			    background: #9999CC;
        			    border: #000 1px solid;
        				float:left;
        			    font-size: 17px;
        			    font-family:Roman;
        			}
        			
        			div .mini{
        			    width: 50px;
        			    height: 50px;
        			    background: #CC66FF;
        			    border: #000 1px solid;
        			    font-size: 12px;
        			    font-family:Roman;
        			}
        			
        			div .mini01{
        			    width: 50px;
        			    height: 50px;
        			    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=" 含有属性title 的div元素背景色为红色"  id="b1"/>
        			$("#b1").click(function(){
        				$("div[title]").css("backgroundColor","red")
        			})
        			// <input type="button" value=" 属性title值等于test的div元素背景色为红色"  id="b2"/>
        			$("#b2").click(function(){
        				$("div[title='test']").css("backgroundColor","red")
        			})
        			// <input type="button" value=" 属性title值不等于test的div元素(没有属性title的也将被选中)背景色为红色"  id="b3"/>
        			$("#b3").click(function(){
        				$("div[title!='test']").css("backgroundColor","red")
        			})
        			// <input type="button" value=" 属性title值 以te开始 的div元素背景色为红色"  id="b4"/>
        			$("#b4").click(function(){
        				$("div[title^='te']").css("backgroundColor","red")
        			})
        			// <input type="button" value=" 属性title值 以est结束 的div元素背景色为红色"  id="b5"/>
        			$("#b5").click(function(){
        				$("div[title$='est']").css("backgroundColor","red")
        			})
        			// <input type="button" value="属性title值 含有es的div元素背景色为红色"  id="b6"/>
        			$("#b6").click(function(){
        				$("div[title*='es']").css("backgroundColor","red")
        			})
        			// <input type="button" value="选取有属性id的div元素,然后在结果中选取属性title值含有“es”的 div 元素背景色为红色"  id="b7"/>
        			$("#b7").click(function(){
        				$("div[id][title*='es']").css("backgroundColor","red")
        			})
        		})
        		
        		
        	</script>
           
        	 
        	</head>
        	 
        	<body>
        				
        		 <input type="button" value="保存"  class="mini" name="ok"  class="mini" />
        		 <input type="button" value=" 含有属性title 的div元素背景色为红色"  id="b1"/>
        		 <input type="button" value=" 属性title值等于test的div元素背景色为红色"  id="b2"/>
        		 <input type="button" value=" 属性title值不等于test的div元素(没有属性title的也将被选中)背景色为红色"  id="b3"/>
        		 <input type="button" value=" 属性title值 以te开始 的div元素背景色为红色"  id="b4"/>
        		 <input type="button" value=" 属性title值 以est结束 的div元素背景色为红色"  id="b5"/>
        		 <input type="button" value="属性title值 含有es的div元素背景色为红色"  id="b6"/>
        		 <input type="button" value="选取有属性id的div元素,然后在结果中选取属性title值含有“es”的 div 元素背景色为红色"  id="b7"/>
        		 
        		 
        	   <div id="one">
        	    	 id为one   div  
        		 </div>
        		
        		 <div id="two" class="mini"  title="test">
        	    	   id为two   class是 mini  div  title="test"
        		       <div  class="mini" >class是 mini</div>
        		</div>
        		
        		 <div class="visible" >
        		 	    class是 one 
        		       <div  class="mini" >class是 mini</div>
        			   <div  class="mini" >class是 mini</div>
        		 </div>
        		 <div class="one" title="test02">
        		 	  class是 one    title="test02"
        		       <div  class="mini01" >class是 mini01</div>
        			   <div  class="mini" style="margin-top:0px;">class是 mini</div>
        		</div>
        		
        		
        		<div class="visible" >
        		 	  这是隐藏的
        		</div>
        		
        		<div class="one">
        			
        		</div>
        		
        		<div id="mover" >
        		 	  动画
        		</div>
        		
        		<input type="text" value="zhang" id="username" name="username">
        	</body> 
        </html>
        
    4. 过滤选择器

      • 首元素选择器

        语法: :first 获得选择的元素中的第一个元素

      • 尾元素选择器

        语法: :last 获得选择的元素中的最后一个元素

      • 非元素选择器

        语法: :not(selector) 不包括指定内容的元素

      • 偶数选择器

        语法: :even 偶数,从 0 开始计数

      • 奇数选择器

        语法: :odd 奇数,从 0 开始计数

      • 等于索引选择器

        语法: :eq(index) 指定索引元素

      • 大于索引选择器

        语法: :gt(index) 大于指定索引元素

      • 小于索引选择器

        语法: :lt(index) 小于指定索引元素

      • 标题选择器

        语法: :header 获得标题(h1~h6)元素,固定写法

      • 案例

        <!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="./jq/jquery-3.3.1.min.js"></script>
        	<style type="text/css">
        		 	div,span{
        			    width: 180px;
        			    height: 180px;
        			    margin: 20px;
        			    background: #9999CC;
        			    border: #000 1px solid;
        				float:left;
        			    font-size: 17px;
        			    font-family:Roman;
        			}
        			
        			div .mini{
        			    width: 50px;
        			    height: 50px;
        			    background: #CC66FF;
        			    border: #000 1px solid;
        			    font-size: 12px;
        			    font-family:Roman;
        			}
        			
        			div .mini01{
        			    width: 50px;
        			    height: 50px;
        			    background: #CC66FF;
        			    border: #000 1px solid;
        			    font-size: 12px;
        			    font-family:Roman;
        			}
        	 </style>
        	<script type="text/javascript">
        		$(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"/>
        			$("#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"/>
        			$("#b9").click(function(){
        				$(":header ").css("backgroundColor","red")
        			})
        		})
        		
        		 
        	</script>
        	</head>
        	 
        	<body>
        				
        		 <input type="button" value="保存"  class="mini" name="ok"  class="mini" />
        		 <input type="button" value=" 改变第一个 div 元素的背景色为 红色"  id="b1"/>
        		 <input type="button" value=" 改变最后一个 div 元素的背景色为 红色"  id="b2"/>
        		 <input type="button" value=" 改变class不为 one 的所有 div 元素的背景色为 红色"  id="b3"/>
        		 <input type="button" value=" 改变索引值为偶数的 div 元素的背景色为 红色"  id="b4"/>
        		 <input type="button" value=" 改变索引值为奇数的 div 元素的背景色为 红色"  id="b5"/>
        		 <input type="button" value=" 改变索引值为大于 3 的 div 元素的背景色为 红色"  id="b6"/>
        		 <input type="button" value=" 改变索引值为等于 3 的 div 元素的背景色为 红色"  id="b7"/>
        		 <input type="button" value=" 改变索引值为小于 3 的 div 元素的背景色为 红色"  id="b8"/>
        		 <input type="button" value=" 改变所有的标题元素的背景色为 红色"  id="b9"/>
        		 
        		
        		 <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>	
        	</body>
        </html>
        
    5. 表单过滤选择器

    • 可用元素选择器

      语法: :enabled 获得可用元素

    • 不可用元素选择器

      语法: :disabled 获得不可用元素

    • 选中选择器

      语法: :checked 获得单选/复选框选中的元素

    • 选中选择器

      语法: :selected 获得下拉框选中的元素

    • 案例

      <!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="./jq/jquery-3.3.1.min.js"></script>
      	<style type="text/css">
      		 	div,span{
      			    width: 180px;
      			    height: 180px;
      			    margin: 20px;
      			    background: #9999CC;
      			    border: #000 1px solid;
      				float:left;
      			    font-size: 17px;
      			    font-family:Roman;
      			}
      			
      			div .mini{
      			    width: 50px;
      			    height: 50px;
      			    background: #CC66FF;
      			    border: #000 1px solid;
      			    font-size: 12px;
      			    font-family:Roman;
      			}
      			
      			div .mini01{
      			    width: 50px;
      			    height: 50px;
      			    background: #CC66FF;
      			    border: #000 1px solid;
      			    font-size: 12px;
      			    font-family:Roman;
      			}
      			#job{
      				margin: 20px;
      			}
      			#edu{
      				margin-top:-70px;
      			}
      			
      	 </style>
          <script type="text/javascript">
      		$(function(){
      			// <input type="button" value="保存"  class="mini" name="ok"  class="mini" />
      			// <input type="button" value=" 利用 jQuery 对象的 val() 方法改变表单内可用 <input> 元素的值"  id="b1"/>
      			$("#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"/>
      			$("#b4").click(function(){
      				alert($("#job > option:selected ").length)
      			})
      		})
      		
      	
      	
      	</script>
      	</head>
      	 
      	<body>
      				
      		 <input type="button" value="保存"  class="mini" name="ok"  class="mini" />
      		 <input type="button" value=" 利用 jQuery 对象的 val() 方法改变表单内可用 <input> 元素的值"  id="b1"/>
      		 <input type="button" value=" 利用 jQuery 对象的 val() 方法改变表单内不可用 <input> 元素的值"  id="b2"/>
      		 <input type="button" value=" 利用 jQuery 对象的 length 属性获取复选框选中的个数"  id="b3"/>
      		 <input type="button" value=" 利用 jQuery 对象的 length 属性获取下拉框选中的个数"  id="b4"/>
       
       		<br><br>
       		
               <input type="text" value="不可用值1" disabled="disabled"> 
      		 <input type="text" value="可用值1" >
      		 <input type="text" value="不可用值2" disabled="disabled">
      		 <input type="text" value="可用值2" >
      		 
      		 <br><br>
      		 <input type="checkbox" name="items" value="美容" >美容
      		 <input type="checkbox" name="items" value="IT" >IT
      		 <input type="checkbox" name="items" value="金融" >金融
      		 <input type="checkbox" name="items" value="管理" >管理
      		 
      		 <br><br>
      		 
      		  <input type="radio" name="sex" value="" ><input type="radio" name="sex" value="" ><br><br>
      		 
      		  <select name="job" id="job" multiple="multiple" size=4>
                	<option>程序员</option>
      			<option>中级程序员</option>
      			<option>高级程序员</option>
      			<option>系统分析师</option>
                </select>
      		    
                <select name="edu" id="edu">
                	<option>本科</option>
      			<option>博士</option>
      			<option>硕士</option>
      			<option>大专</option>
                </select>
      	   
      	  		
      	  	<br/>
      	  		
      		 <div id="two" class="mini" >
      	    	   id为two   class是 mini  div
      		       <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>
      	</body>
      </html>
      
5. DOM操作
  1. 内容操作

    1. html(): 获取/设置元素的标签体内容

       <a><font>内容</font></a>  --> <font>内容</font>
      
    2. text(): 获取/设置元素的标签体纯文本内容

      <a><font>内容</font></a> --> 内容
      
    3. val(): 获取/设置元素的value属性值

  2. 属性操作

    1. 通用属性操作

      • attr(): 获取/设置元素的属性

      • removeAttr():删除属性

      • prop():获取/设置元素的属性

      • removeProp():删除属性

        attr和prop区别?

        如果操作的是元素的固有属性,则建议使用prop

        如果操作的是元素自定义的属性,则建议使用attr

    2. 对class属性操作

      • addClass():添加class属性值
      • removeClass():删除class属性值
      • toggleClass():切换class属性
      • css():
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值