03_jQuery

基础

1、jQuery 介绍

什么是 jQuery ? 
		jQuery,顾名思义,也就是 JavaScript 和查询(Query),它就是辅助 JavaScript 开发的 js 类库。 
jQuery 核心思想!!!
	 	它的核心思想是 write less,do more(写得更少,做得更多),所以它实现了很多浏览器的兼容问题。 
jQuery 流行程度 
		jQuery 现在已经成为最流行的 JavaScript 库,在世界前 10000 个访问最多的网站中,有超过 55%在使用 jQuery。
 jQuery 好处!!!
 		 jQuery 是免费、开源的,jQuery 的语法设计可以使开发更加便捷,例如操作文档对象、选择 DOM 元素、 制作动画效果、事件处理、使用 Ajax 以及其他功能

2、语法

菜鸟教程 基本语法

  • 入口函数
    jQuery 入口函数:
		$(document).ready(function(){
		    // 执行代码
		});

或者

		$(function(){
		    // 执行代码
		});

JavaScript 入口函数:

		window.onload = function () {
		    // 执行代码
		}
<script type="text/javascript">
		//js方式
			window.onload = function () {
			var btnObj = document.getElementById("btnId");
			// alert(btnObj);//[object HTMLButtonElement]   ====>>>  dom对象
			btnObj.onclick = function () {
				alert("js 原生的单击事件");
			}
		}

		//jq方式
		$(function () { // 表示页面加载完成 之后,相当 window.onload = function () {}
			var $btnObj = $("#btnId"); // 表示按id查询标签对象
			$btnObj.click(function () { // 绑定单击事件
				alert("jQuery 的单击事件");
			});
		});

	</script>



</head>
<body>
	<button id="btnId">SayHello</button>
</body>
  • 常见问题?

      1、使用 jQuery 一定要引入 jQuery 库吗? 
      		答案: 是,必须 
      		
      2、jQuery 中的$到底是什么? 
      		答案: 它是一个函数 
      		
      3、怎么为按钮添加点击响应函数的? 
      		答案: 		1、使用 jQuery 查询到标签对象
      					 2、使用标签对象.click( function(){} );
    

3、函数

  • $ 是 jQuery 的核心函数,能完成 jQuery 的很多功能。 ( ) 就 是 调 用 ()就是调用 ()这个函数

1、传入参数为 [ 函数 ] 时:

	表示页面加载完成之后。相当于 window.onload = function(){}

2、传入参数为 [ HTML 字符串 ] 时:

	会为我们创建这个 html 标签对象 

3、传入参数为 [ 选择器字符串 ] 时:

	 $(“#id 属性值”); id 选择器,根据 id 查询标签对象 $(“标签名”); 
	 标签名选择器,根据指定的标签名查询标签对象 $(“.class 属性值”); 
	 类型选择器,可以根据 class 属性查询标签对象 

4、传入参数为 [ DOM 对象 ] 时:

	会把这个 dom 对象转换为 jQuery 对象

4、jQuery 对象和 dom 对象区分

  • Dom 对象

      1.通过 getElementById()查询出来的标签对象是 Dom 对象 
      2.通过 getElementsByName()查询出来的标签对象是 Dom 对象 
      3.通过 getElementsByTagName()查询出来的标签对象是 Dom 对象 
      4.通过 createElement() 方法创建的对象,是 Dom 对象 DOM 对象 
      Alert 出来的效果是:[object HTML 标签名 Element]
    
  • jQuery 对象

       5.通过 JQuery 提供的 API 创建的对象,是 JQuery 对象 
       6.通过 JQuery 包装的 Dom 对象,也是 JQuery 对象 
       7.通过 JQuery 提供的 API 查询到的对象,是 JQuery 对象 jQuery 对象 
       Alert 出来的效果是:[object Object]
    

jQuery 对象的本质是什么?

  • jQuery 对象是 dom 对象的数组 + jQuery 提供的一系列功能函数。

jQuery 对象和 Dom 对象使用区别

jQuery 对象不能使用 DOM 对象的属性和方法
DOM 对象也不能使用 jQuery 对象的属性和方法

Dom 对象和 jQuery 对象互转

1、dom 对象转化为 jQuery 对象(*重点)

		1、先有 DOM 对象 
		2、$( DOM 对象 ) 就可以转换成为 jQuery 对象 

2、jQuery 对象转为 dom 对象(*重点)

		1、先有 jQuery 对象 
		2、jQuery 对象[下标]取出相应的 DOM 对象

在这里插入图片描述

选择器

菜鸟教程选择器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

遍历(元素筛选)

在这里插入图片描述

在这里插入图片描述

过滤
		eq() 					获取给定索引的元素 												功能跟 :eq() 一样 
		first() 				获取第一个元素 													功能跟 :first 一样 
		last() 					获取最后一个元素 												功能跟 :last 一样 
		filter(exp) 			留下匹配的元素 
		is(exp) 				判断是否匹配给定的选择器,只要有一个匹配就返回,
		true has(exp) 		    返回包含有匹配选择器的元素的元素 								功能跟 :has 一样 
		not(exp) 				删除匹配选择器的元素 											功能跟 :not 一样 
查找
		children(exp) 		    返回匹配给定选择器的子元素 										功能跟 parent>child 一样
		 find(exp) 			    返回匹配给定选择器的后代元素 									功能跟 ancestor descendant 一样
		next() 					返回当前元素的下一个兄弟元素 									功能跟 prev + next 功能一样 
		nextAll() 				返回当前元素后面所有的兄弟元素 									功能跟 prev ~ siblings 功能一样 
		nextUntil() 			返回当前元素到指定匹配的元素为止的后面元素 
		parent()				 返回父元素 
		prev(exp) 			    返回当前元素的上一个兄弟元素 
		prevAll() 				返回当前元素前面所有的兄弟元素 
		prevUnit(exp) 		    返回当前元素到指定匹配的元素为止的前面元素 
		siblings(exp) 		    返回所有兄弟元素 
串联		
		add() 					把 add 匹配的选择器的元素添加到当前 jquery 对象中
	<script type="text/javascript">
			$(document).ready(function(){
				function anmateIt(){
					$("#mover").slideToggle("slow", anmateIt);
				}
				anmateIt();
				
	/**
					
	过滤
	eq(index|-index) 			
	first() 					
	last() 						
	hasClass(class) 			
	filter(expr|obj|ele|fn) 	
	is(expr|obj|ele|fn)1.6* 	
	has(expr|ele) 				
	not(expr|ele|fn) 			
	slice(start,[end]) 			
	
	查找
	children([expr]) 			
	closest(expr,[con]|obj|ele)1.6*   
	find(expr|obj|ele) 				
	next([expr]) 					
	nextall([expr]) 				
	nextUntil([exp|ele][,fil])1.6* 	
	parent([expr]) 					
	parents([expr]) 				
	parentsUntil([exp|ele][,fil])1.6*  
	prev([expr]) 					
	prevall([expr]) 				
	prevUntil([exp|ele][,fil])1.6* 	
	siblings([expr]) 				
	
	串联
	add(expr|ele|html|obj[,con]) 	
							
	
	*/
				
				//(1)eq()  选择索引值为等于 3 的 div 元素
				$("#btn1").click(function(){
					$("div").eq(3).css("background-color","#bfa");
				});
				//(2)first()选择第一个 div 元素
				 $("#btn2").click(function(){
					 //first()   选取第一个元素
					$("div").first().css("background-color","#bfa");
				});
				//(3)last()选择最后一个 div 元素
				$("#btn3").click(function(){
					//last()  选取最后一个元素
					$("div").last().css("background-color","#bfa");
				});
				//(4)filter()在div中选择索引为偶数的
				$("#btn4").click(function(){
					//filter()  过滤   传入的是选择器字符串
					$("div").filter(":even").css("background-color","#bfa");
				});
				 //(5)is()判断#one是否为:empty或:parent
				//is用来检测jq对象是否符合指定的选择器
				$("#btn5").click(function(){
					alert( $("#one").is(":empty") );
				});
				
				//(6)has()选择div中包含.mini的
				$("#btn6").click(function(){
					//has(selector)  选择器字符串    是否包含selector
					$("div").has(".mini").css("background-color","#bfa");
				});
				//(7)not()选择div中class不为one的
				$("#btn7").click(function(){
					//not(selector)  选择不是selector的元素
					$("div").not('.one').css("background-color","#bfa");
				});
				//(8)children()在body中选择所有class为one的div子元素
				$("#btn8").click(function(){
					//children()  选出所有的子元素
					$("body").children("div.one").css("background-color","#bfa");
				});
				
				
				//(9)find()在body中选择所有class为mini的div元素
				$("#btn9").click(function(){
					//find()  选出所有的后代元素
					$("body").find("div.mini").css("background-color","#bfa");
				});
				//(10)next() #one的下一个div
				$("#btn10").click(function(){
					//next()  选择下一个兄弟元素
					$("#one").next("div").css("background-color","#bfa");
				});
				//(11)nextAll() #one后面所有的span元素
				$("#btn11").click(function(){
					//nextAll()   选出后面所有的元素
					$("#one").nextAll("span").css("background-color","#bfa");
				});
				//(12)nextUntil() #one和span之间的元素
				$("#btn12").click(function(){
					//
					$("#one").nextUntil("span").css("background-color","#bfa")
				});
				//(13)parent() .mini的父元素
				$("#btn13").click(function(){
					$(".mini").parent().css("background-color","#bfa");
				});
				//(14)prev() #two的上一个div
				$("#btn14").click(function(){
					//prev()  
					$("#two").prev("div").css("background-color","#bfa")
				});
				//(15)prevAll() span前面所有的div
				$("#btn15").click(function(){
					//prevAll()   选出前面所有的元素
					$("span").prevAll("div").css("background-color","#bfa")
				});
				//(16)prevUntil() span向前直到#one的元素
				$("#btn16").click(function(){
					//prevUntil(exp)   找到之前所有的兄弟元素直到找到exp停止
					$("span").prevUntil("#one").css("background-color","#bfa")
				});
				//(17)siblings() #two的所有兄弟元素
				$("#btn17").click(function(){
					//siblings()    找到所有的兄弟元素,包括前面的和后面的
					$("#two").siblings().css("background-color","#bfa")
				});
				
				
				//(18)add()选择所有的 span 元素和id为two的元素
				$("#btn18").click(function(){
	
					//   $("span,#two,.mini,#one")
					$("span").add("#two").add("#one").css("background-color","#bfa");
					
				});
			});
			
		</script>

特殊

jQuery遍历

  • 区别

      在遍历的function函数中,有一个this对象,这个this对象,就是当前遍历到的dom对象
    
					// 获取全部选中的复选框标签对象
					var $checkboies = $(":checkbox:checked");
					// 老式遍历
					// for (var i = 0; i < $checkboies.length; i++){
					// 	alert( $checkboies[i].value );
					// }

					// each方法是jQuery对象提供用来遍历元素的方法
					// 在遍历的function函数中,有一个this对象,这个this对象,就是当前遍历到的dom对象
					$checkboies.each(function () {
						alert( this.value );
					});

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值