JQuery-------選擇器---01

一:簡介

          jQuery是免費、開源的。jQuery已經成爲最流行的javascript庫。 jQuery能夠使用戶的html頁面保持代碼和html內容分離,也就是說,不用再在html裏面插入一堆js來調用命令了,只需要定義id即可。

二:基本語法

    

<script type="text/javascript">
		//js 執行時,有加載順序
		
		/* jQuery獲得數據
		 * * 語法:$("選擇器")   == jQuery("選擇器")
		 * 
		 */
		
		var username = $("#username");
		// * val()函數 用於獲得 value屬性的值
		alert(username.val());
		
	</script>

三:JQuery與DOM對象的轉換

<script type="text/javascript">

         //1 使用javascript獲得value值

         var username = document.getElementById("username");

         //alert(username.value);

        

         //2 將 dom對象轉換 jQuery對象

         // * 語法:$(dom對象)

         // * 建議:jQuery對象變量名,建議爲$開頭

         var $username = $(username);

//       alert($username.val());

        

         //3 將 jQuery對象轉換 dom對象

         //3.1 jQuery對象內部使用【數組】存放所有的數據,可以數組的下標獲取(索引)

         var  username2 =$username[0];

         alert(username2.value);

         //3.2 jQuery提供函數 get() 轉換成dom對象

         var  username3 =$username.get(0);

         alert(username3.value);
    </script>

  三:選擇器

    3.1 基本選擇器

            

<script type="text/javascript">
  	$(document).ready(function(){
  		
  		
  		
  	});    // 這這個就是加載頁面  類似於window.onlad
//  	 <input type="button" value="選擇 id爲 one 的元素." id="btn1"/>  
	$(document).ready(function() {
 		$("#btn1").click(function() {
 			
 			$("#one").css("background-color","#ff0");
 			
 			
 		});
  // 	  <input type="button" value="選擇 class 爲 mini 的所有元素." id="btn2"/>
 		$("#btn2").click(function(){
				
				$(".mini").css("background-color","#ff0");
				
			});

 		 // 	  <input type="button" value="選擇 元素名是 div 的所有元素." id="btn3"/>
 		 $("#btn3").click(function(){
 			 $("div").css("background-color","#ff0");
 			 
 		 });
		 //// 	  <input type="button" value="選擇 所有的元素." id="btn4"/>
		$("#btn4").click(function(){
			$("*").css("background-color","#ff0");
			
		});
		 
		 // 	  <input type="button" value="選擇 所有的span元素和id爲two的元素." id="btn5"/>
		$("#btn5").click(function(){
			$("span,#two").css("background-color","#ff0");
			
		});
 		
 		
 		
 		
 		
 	});

 </script>

    3.2層級

    

<script type="text/javascript">
  $(document).ready(function(){
	  //<input type="button" value="選擇 body內的所有div元素." id="btn1"/>
	  $("#btn1").click(function(){
		  
			$("body div").css("background-color","red");
			// div元素裏的也算
	  });
	  
	  
	  
	 // <input type="button" value="在body內,選擇子元素是div的。" id="btn2"/>
	 $("#btn2").click(function(){
		 $("body>div").css("background-color","red"); // 只算div元素
	 });
	 
	 
	 // <input type="button" value="選擇 id爲one 的下一個div元素." id="btn3"/>
	 $("#btn3").click(function(){
		 $("#one+div").css("background-color","red");
		 
		 
	 });
	 
	 
	 // <input type="button" value="選擇 id爲two的元素後面的所有div兄弟元素." id="btn4"/>
	  $("#btn4").click(function(){
		 $("#two~div").css("background-color","red");
		 
		 
	 });
	 // <input type="button" value="選擇 id爲two的元素的所有div兄弟元素." id="btn5"/>
	    // 要用到篩選
	  $("#btn5").click(function(){
			 $("#two").siblings("div").css("background-color","red");
			 
			 
		 }); 
	  
  });
  
  </script>

    3.3基本過濾

    

<script type="text/javascript">
	$(document).ready(function(){
	

//<input type="button" value="選擇第一個div元素." id="btn1"/>
	$("#btn1").click(function(){
		$("div:first").css("background-color","red");
		
	});


//<input type="button" value="選擇最後一個div元素." id="btn2"/>
$("#btn2").click(function(){
		$("div:last").css("background-color","red");
		
	});
//<input type="button" value="選擇class不爲one的 所有div元素." id="btn3"/>
$("#btn3").click(function(){
		$("div:not('.one')").css("background-color","red");
		
	});
//<input type="button" value="選擇索引值爲偶數 的div元素." id="btn4"/>
$("#btn4").click(function(){
		$("div:even()").css("background-color","red");
		
	});
//<input type="button" value="選擇索引值爲奇數 的div元素." id="btn5"/>
$("#btn5").click(function(){
		$("div:odd()").css("background-color","red");
		
	});
//<input type="button" value="選擇索引值等於3的元素." id="btn6"/>
$("#btn6").click(function(){
		$("div:eq(3)").css("background-color","red");
		
	});
//<input type="button" value="選擇索引值大於3的元素." id="btn7"/>
$("#btn7").click(function(){
		$("div:gt(3)").css("background-color","red");
		
	});
//<input type="button" value="選擇索引值小於3的元素." id="btn8"/>
$("#btn8").click(function(){
		$("div:lt(3)").css("background-color","red");
		
	});
//<input type="button" value="選擇所有的標題元素." id="btn9"/>
$("#btn9").click(function(){
		$(":header").css("background-color","red");
		
	});
//<input type="button" value="選擇當前正在執行動畫的所有元素." id="btn10"/>
$("#btn10").click(function(){
		$(":animated").css("background-color","red");
		
	});
//<input type="text" value="請輸入賬號" defaultValue="請輸入賬號" />
//<input type="text" value="請輸入密碼" defaultValue="請輸入密碼"/>
 // 實現功能
 	$("input[type='text']").on("blur focus",function(){ // 獲得帳號密碼的文本框
 		// 現獲取默認值
 		var mr  = $(this).attr("defaultValue");
 	
 		//  判斷是否是獲取到焦點,
 		if($(this).is(":focus")) 
 			{
 				// 如果爲空則進行默認值
 				if($(this).val() ==mr)
 					{
 					$(this).val("");
 					$(this).css("color","#000");	
 					}
 				
 			}
 		else   // 若不是
 			{
 			// 如果不爲空,則不進行清空
 			if($(this).val() == "")
 				{
 				$(this).val(mr);
 				$(this).css("color","#999");
 				}
 			}
 		
 		// 在html5中  , 一句話就搞定
 		// 在119行  placeholder
 	});
 
 
});
</script>

    3.4內容過濾

<script type="text/javascript">
  	$(document).ready(function(){
//  	<input type="button" value="選取含有文本“di”的div元素." id="btn1"/>
  		$("#btn1").click(function(){
  			
  			$("div:contains('di')").css("background-color","red");
  		});
    //	  <input type="button" value="選取不包含子元素(或者文本元素)的div空元素." id="btn2"/>
  	$("#btn2").click(function(){
  		$("div:empty").css("background-color","red");
  		
  	});
    
    //  <input type="button" value="選取含有class爲mini元素 的div元素." id="btn3"/>
  	
    $("#btn3").click(function(){
  		$("div:has('.mini')").css("background-color","red");
  		
  	});
    
    //<input type="button" value="選取含有子元素(或者文本元素)的div元素." id="btn4"/>
    // 意思就是自己是父元素,裏面包含別的
	    $("#btn4").click(function(){
	  		$("div:parent").css("background-color","red");
	  		
	  	});
	  		
	  		
  	});
  
  
  
  </script>

    3.5可見性過濾(★)

<script type="text/javascript">
  
  	$(document).ready(function(){
//  		<input type="button" value=" 選取所有可見的div元素"  id="b1"/>
	$("#b1").click(function(){
		$("div:visible").css("background-color","red");
		
	});

 // 	  <input type="button" value=" 選取所有不可見的元素, 利用 jQuery 中的 show() 方法將它們顯示出來"  id="b2"/>
 	$("#b2").click(function(){
		$("div:hidden").css("background-color","red").show(1000);
		
	});// 顯示出來
 
 // 	  <input type="button" value=" 選取所有的文本隱藏域, 並打印它們的值"  id="b3"/>
		 $("#b3").click(function(){
				$("input:hidden").each(function(){
					alert($(this).val() );
				});
				
			});
 
 // 	  <input type="button" value=" 選取所有的文本隱藏域, 並打印它們的值"  id="b4"/>
 			$("#b4").click(function(){
 				
 				$("input:hidden").each(function(){
 					
 					alert($(this).val() );
 				});
 				
 			}); 	
 
 
 
 
  		
 	 });
  
  
  
  </script>

    3.6屬性選擇器

<script type="text/javascript">
 	$(document).ready(function(){
// 		<input type="button" value="選取含有 屬性title 的div元素." id="btn1"/>
		$("#btn1").click(function(){
			$("div[title]").css("background","red");
			
		});


// 		  <input type="button" value="選取 屬性title值等於“test”的div元素." id="btn2"/>
 		$("#btn2").click(function(){
 			$("div[title='test']").css("background","red");
 			
 		});
 
 //		  <input type="button" value="選取 屬性title值不等於“test”的div元素(沒有屬性title的也將被選中)." id="btn3"/>
 		$("#btn3").click(function(){
 			$("div[title!='test']").css("background","red");
 			
 		});
 
 //		  <input type="button" value="選取 屬性title值 以“te”開始 的div元素." id="btn4"/>
			$("#btn4").click(function(){
 			$("div[title^='te']").css("background","red");
 			
 		});
 
 
 //		  <input type="button" value="選取 屬性title值 以“est”結束 的div元素." id="btn5"/>
 			$("#btn5").click(function(){
 			$("div[title$='est']").css("background","red");
 			
 		});
 
 //		  <input type="button" value="選取 屬性title值 含有“es”的div元素." id="btn6"/>
 				$("#btn6").click(function(){
 			$("div[title*='es']").css("background","red");
 			
 		});
 
 
 
 // <input type="button" value="組合屬性選擇器,首先選取有屬性id的div元素,然後在結果中 選取屬性title值 含有“es”的元素." id="btn7"/>
 				$("#btn7").click(function(){
 		 			$("div[id][title*='es']").css("background","red");
 		 			
 		 		});
 		
 	});
 
 
 
  </script>

3.7子元素過濾

<script type="text/javascript">
 $(document).ready(function(){
//	 <input type="button" value="選取每個class爲one的div父元素下的第2個子元素." id="btn1"/>
		$("#btn1").click(function(){
			// 在div加元素後,一定加空格 否則不可以實現
			// 不加空格就是本身div的樣式;
			$("div[class='one'] :nth-child(2)").css("background-color","red");
			
			
		});

//	  <input type="button" value="選取每個class爲one的div父元素下的第一個子元素." id="btn2"/>
	$("#btn2").click(function(){
		$("div[class='one'] :first-child").css("background-color","red");
		
	});

//	  <input type="button" value="選取每個class爲one的div父元素下的最後一個子元素." id="btn3"/>
		$("#btn3").click(function(){
		$("div[class='one'] :last-child").css("background-color","red");
		
	});

//	  <input type="button" value="如果class爲one的div父元素下的僅僅只有一個子元素,那麼選中這個子元素." id="btn4"/>
		$("#btn4").click(function(){
			$("div[class='one'] :only-child").css("background-color","red");
			
		});
	 
	 
 });
 
 
  </script>

3.8 表單對象屬性過濾

 <script type="text/javascript">
  	$(document).ready(function(){
  		
//  		<button id="btn1">對錶單內 可用input 賦值操作.</button>
		$("#btn1").click(function(){
			$("input:enabled").val("aaa");
			
		});


//  	  <button id="btn2">對錶單內 不可用input 賦值操作.</button>
		$("#btn2").click(function(){
					$("input:disabled").val("assss");
					
				});
//  	  <button id="btn3">獲取多選框選中的個數.</button>
		$("#btn3").click(function(){
				var s11 = $("[name='newsletter']").length;  // 獲得總共的單選框個數
				var s1 = $("[name='newsletter']:checked").length; // 標識選中的個數;
					alert(s1);
				});
//  	  <button id="btn4">獲取下拉框選中的內容.</button>
		$("#btn4").click(function(){
			$(":selected").each(function(){
				$(this).val();
				// 添加到selectDivId   div中
				// 若沒有val值,則會取出text值;
				// html標籤是獲得內容
				$("#selectDivId").append($(this).html());
			});
		});
  		
  	});
  
  
  </script>


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章