JQuery——JQuery七大选择器及常见错误注意事项

JQuery——JQuery七大选择器及常见错误注意事项

1.选择器的分类

JQuery——JQuery七大选择器及常见错误注意事项

2.基本选择器

2.1 基本选择器的分类及描述

JQuery——JQuery七大选择器及常见错误注意事项

2.2 基本选择器的代码实现

<script type="text/javascript">
  $(function(){
  	//选择id为one的元素
  	$("#btn1").click(function(){
  		$("#one").css("background","#bfa");
  	});
  	//选择class为mini的所有元素
  	$("#btn2").click(function(){
  		$(".mini").css("background","#bfa");
  	});
  	//选择 元素名是 div 的所有元素
  	$("#btn3").click(function(){
  		$("div").css("background","#bfa");
  	});
  	//选择 所有的元素
  	$("#btn4").click(function(){
  		$("*").css("background","#bfa");
  	});
  	//选择 所有的span元素和id为two的元素
  	$("#btn5").click(function(){
  		$("span,#two").css("background","#bfa");
  	});
  });
</script>

3.层次选择器

3.1 层次选择器的分类及描述

JQuery——JQuery七大选择器及常见错误注意事项

3.2 层次选择器的代码实现

<script type="text/javascript">
	$(function() {
		//选择body内的所有div元素
		$("#btn1").click(function() {
			$('body div').css("background", "#bbffaa");
		});
		//在body中选择元素名称是div的子元素(第一层包含的元素,元素内部的其他元素不包括)
		$("#btn2").click(function() {
			$('body>div').css("background", "#bbffaa");
		});
		//选择 所有class为one 的下一个div元素(除去第一个后面的元素,但是要求必须是class为one)
		$("#btn3").click(function() {
			$('.one+div').css("background", "#bbffaa");
		});
		//选择 id为two的元素后面的所有div兄弟元素(后面同一级别的div元素)
		$("#btn4").click(function() {
			$('#two~div').css("background", "#bbffaa");
		});
	});
</script>

4.基本过滤选择器

4.1 基本过滤选择器的分类及描述

JQuery——JQuery七大选择器及常见错误注意事项
JQuery——JQuery七大选择器及常见错误注意事项

4.2 基本过滤选择器的代码实现

<script type="text/javascript">
  $(function(){
  	//选择第一个div元素
  	$("#btn1").click(function(){      		
  		$("div:first").css("background","#bfa");
  	});
  	//选择最后一个div元素
  	$("#btn2").click(function(){      		
  		$("div:last").css("background","#bfa");
  	});
  	//选择class不为one的 所有div元素
  	$("#btn3").click(function(){      		
  		$("div:not(.one)").css("background","#bfa");
  	});
  	//选择索引值为偶数 的div元素
  	$("#btn4").click(function(){      		
  		$("div:even").css("background","#bfa");
  	});
  	//选择索引值为奇数的div元素
  	$("#btn5").click(function(){      		
  		$("div:odd").css("background","#bfa");
  	});
  	//选择索引值等于3的元素
  	$("#btn6").click(function(){      		
  		$("div:eq(3)").css("background","#bfa");
  	});
  	//选择索引值大于3的元素
  	$("#btn7").click(function(){      		
  		$("div:gt(3)").css("background","#bfa");
  	});
  	//选择索引值小于3的元素
  	$("#btn8").click(function(){      		
  		$("div:lt(3)").css("background","#bfa");
  	});
  	//选择所有的标题元素,比如h1,h2,h3等
  	$("#btn9").click(function(){      		
  		$(":header").css("background","#bfa");
  	});
  	//选择当前正在执行动画的所有元素
  	$("#btn10").click(function(){      		
  		$(":animated").css("background","#bfa");
  	});
  	//选择当前获取焦点的所有元素
  	$("#btn11").click(function(){      		
  		$(":focus").css("background","#bfa");
  	});
  });
</script>

5.属性过滤选择器

5.1 属性过滤选择器的分类及描述

JQuery——JQuery七大选择器及常见错误注意事项

5.2 属性过滤选择器的代码实现

<script type="text/javascript">
  $(function(){
  	//选取含有 属性title 的div元素
  	$("#btn1").click(function(){
  		$("div[title]").css("background","#bbffaa");
  	});
  	//选取 属性title值等于“test”的div元素
  	$("#btn2").click(function(){
  		$("div[title=test]").css("background","#bbffaa");
  	});
  	//选取 属性title值不等于“test”的div元素(没有属性title的也将被选中)
  	$("#btn3").click(function(){
  		$("div[title!=test]").css("background","#bbffaa");
  	});
  	//选取 属性title值 以“te”开始 的div元素
  	$("#btn4").click(function(){
  		$("div[title^=te]").css("background","#bbffaa");
  	});
  	//选取 属性title值 以“est”结束 的div元素
  	$("#btn5").click(function(){
  		$("div[title$=est]").css("background","#bbffaa");
  	});
  	//选取 属性title值 含有“es”的div元素
  	$("#btn6").click(function(){
  		$("div[title*=es]").css("background","#bbffaa");
  	});
  	//组合属性选择器,首先选取有属性id的div元素,然后在结果中 选取属性title值 含有“es”的元素
  	$("#btn7").click(function(){
  		$("div[id][title*=es]").css("background","#bbffaa");
  	});
  });
</script>

6.可见性过滤选择器

6.1 可见性过滤选择器的分类及描述

JQuery——JQuery七大选择器及常见错误注意事项

6.2 可见性过滤选择器的代码实现

<script type="text/javascript">
   $(function(){
   	$("#reset").click(function(){
   		window.location.reload();
   	});
   	$("#btn_visible").click(function(){
   		$("div:visible").css("background","#ffbbaa");
   	});
   	$("#btn_hidden").click(function(){
   		alert("不可见的元素有:"+$('body :hidden').length+"个\n"+
   		"其中不可见的div元素:"+$('div:hidden').length+"个\n");
   		$("div:hidden").show(3000).css("background","#bbffaa");
   	});
   });
</script>

7.表单选择器

7.1 表单选择器的分类及描述

JQuery——JQuery七大选择器及常见错误注意事项

7.2 表单选择器的代码实现

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

        var $alltext = $("#form1 :text");
        var $allpassword = $("#form1 :password");
        var $allradio = $("#form1 :radio");
        var $allcheckbox = $("#form1 :checkbox");

        var $allsubmit = $("#form1 :submit");
        var $allimage = $("#form1 :image");
        var $allreset = $("#form1 :reset");
        var $allbutton = $("#form1 :button"); // <input type=button />  和 <button ></button>都可以匹配
        var $allfile = $("#form1 :file");
        var $allhidden = $("#form1 :hidden"); // <input type="hidden" />和<div style="display:none">test</div>都可以匹配.
        var $allselect = $("#form1 select");
        var $alltextarea = $("#form1 textarea");

        var $AllInputs = $("#form1 :input");
        var $inputs = $("#form1 input");

        $("div").append(" 有" + $alltext.length + " 个( :text 元素)<br/>")
        .append(" 有" + $allpassword.length + " 个( :password 元素)<br/>")
		.append(" 有" + $allradio.length + " 个( :radio 元素)<br/>")
        .append(" 有" + $allcheckbox.length + " 个( :checkbox 元素)<br/>")
		.append(" 有" + $allsubmit.length + " 个( :submit 元素)<br/>")
        .append(" 有" + $allimage.length + " 个( :image 元素)<br/>")
		.append(" 有" + $allreset.length + " 个( :reset 元素)<br/>")
		.append(" 有" + $allbutton.length + " 个( :button 元素)<br/>")
		.append(" 有" + $allfile.length + " 个( :file 元素)<br/>")
		.append(" 有" + $allhidden.length + " 个( :hidden 元素)<br/>")
		.append(" 有" + $allselect.length + " 个( select 元素)<br/>")
		.append(" 有" + $alltextarea.length + " 个( textarea 元素)<br/>")
		.append(" 表单有 " + $inputs.length + " 个(input)元素。<br/>")
		.append(" 总共有 " + $AllInputs.length + " 个(:input)元素。<br/>")
		.css("color", "red")

        $("form").submit(function () { return false; }); // return false;不能提交.

    });
    //]]>
</script>

8.常见错误注意事项

8.1 特殊符号需转义

JQuery——JQuery七大选择器及常见错误注意事项

8.2 选择器中的空格要注意

JQuery——JQuery七大选择器及常见错误注意事项