jQuery

目录

1. jQuery简介

2. jQuery的开发步骤

3. jQuery与JavaScript

4. jQuery的动画效果

5. jQuery的基本选择器

6. jQuery的层级选择器

7. jQuery的基本过滤器

8. jQuery的属性选择器


1. jQuery简介

jQuery是一个快速、简洁的JavaScript框架,是一个JavaScript代码库,优化HTML文档操作(DOM)、事件处理、动画设计和Ajax交互。

Ajax 即异步 JavaScript 和 XML,是指一种创建交互式网页应用的网页开发技术,简单来说就是前端向后端传递数据的技术。Ajax无需重新加载网页便可更新部分网页。

JavaScript代码库提供了大量的api(应用程序接口) ,有很多内置方法,比如:click()  dbclick()

2. jQuery的开发步骤

  1. 导入js核心库
  2. 确定页面载入事件
  • 注意:
    • jQuery中,两个方法名相同的方法,不会互相覆盖。
<script src="js/jquery-1.11.0.js"></script>
<script>
    //ready是页面载入事件
    //方式1:
    jQuery(document).ready(function(){
    	alert("jQuery(document).ready(function()1");
    }) ;

    //方式2:
    //$("选择器")
    $(document).ready(function(){
    	alert("$(document).ready(function()2") ;
    }) ;

    //简写方式:
    $(function(){
        alert("页面载入事件触发了,简化方式的写法");
    });
</script>

3. jQuery与JavaScript

  • jQuery比JavaScript的onload优先执行
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>Jquery的入门</title>
            <script src="js/jquery-1.11.0.js"></script>

            <script>
                function init(){
                    alert("js的页面载入事件");
                }
                //页面载入事件
                $(function(){  //相当于onload事件
                    alert("jq的页面载入事件") ;
                }) ;
            </script>
	</head>
	<body onload="init()">	
	</body>
</html>
  • 两者使用函数的比较
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>jQuery入门</title>
		<script src="js/jquery-1.11.0.js"></script>
		<script>
			//js
			function jsclick(){
				alert("js点击了");
			}
			//jq中不需要指定onclick,可以只通过id使用id选择器来实现
			$(function(){
				//点击事件
				//寻找事件源
				$("jqb").click(function(){
					alert("jq点击了");
				})
			});
		</script>
	</head>
	<body>
		<input type="button" value="js点击" onclick="jsclick()" />
		<input type="button" value="jq点击" id="jqb" />
	</body>
</html>
  • 两者之间的相互转换
    • js -> jq 在js对象前加上$符号,即 $(js对象)-->jQuery对象
    • jq -> js 通过get()
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>js与jq的转换</title>
	</head>
	<script src="js/jquery-1.11.0.js"></script>
	<script>
		//js
		function jsChange(){
			var ele=document.getElementById("div1");
			//转换为jq对象
			var $ele=$(ele);
			//相当于js中的innerHTML
			$ele.html("js -> jq");
		}
		
		//jq
		$(function(){
			$("#btn2").click(function(){
				var ele=$("#div1").get(0);
				ele.innerHTML="jq -> js";
			});
		});
	</script>
	<body>
		<input type="button" onclick="jsChange()" value="这是js更改下面div文本内容的方式" id="btn1" /><br />
		<input type="button"  value="使用jq的方式更改下面div文本内容" id="btn2" /><br />
		<div id="div1">
	  		 被Js/jQuery的方式更改掉
		</div>
	</body>
</html>

4. jQuery的动画效果

  • show()方法:显示隐藏的匹配元素
  • hide()方法:隐藏元素
  • show(speed, [callback])
  • hide(speed, [callback])
    • speed:三种速度"slow"、"normal"或 "fast" / 表示动画时长的毫秒数值
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>动画效果</title>
		<script src="js/jquery-1.11.0.js"></script>
		<script>
			$(function(){
				$("#btn1").click(function(){
					//普通显示
//					$("img").show(3000);
					//从上向下显示
//					$("img").slideDown(2000);
					//淡出
//					$("img").fadeIn(2000);
					//自定义显示
					$("img").animate({width:"500px",opacity:"1"},2000) ;
				});
			});
			
			
			$(function(){
				$("#btn2").click(function(){
					//普通隐藏
//					$("img").hide(2000);
					//从下向上隐藏
//					$("img").slideUp(2000);
					//淡入
//					$("img").fadeOut(2000);
					//自定义隐藏
					$("img").animate({width:"500px",opacity:"0.1"},2000) ;
				});
			});
		</script>
	</head>
	<body>
		<input type="button" value="显示" id="btn1" />
		<input type="button" value="隐藏" id="btn2" />
		<br />
		<img src="img/海景1.jpg" width="500px" />
	</body>
</html>

5. jQuery的基本选择器

  • 基本选择器
    • id选择器
    • class选择器 
    • element元素选择器
    • 通配符选择器:*
    • 并集选择器 selector 1,selector 2..seletor n..
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>基本选择器</title>
		<!--引入样式 rel指定层级样式表-->
		<link href="css/style.css" rel="stylesheet" />
		<script src="js/jquery-1.11.0.js"></script>
		<script>
			$(function(){
				//id选择器
				$("#btn1").click(function(){
					$("#two").css("background-color","darksalmon");
				})
				
				//class选择器
				$("#btn2").click(function(){
					$(".mini").css("background-color","powderblue");
				})
				
				//元素选择器
				$("#btn3").click(function(){
					$("div").css("background-color","lightgoldenrodyellow");
				})
				
				//通配符选择器
				$("#btn4").click(function(){
					$("*").css("background-color","plum");
				})
				
				//并集选择器
				$("#btn5").click(function(){
					$("。mini,span").css("background-color","chartreuse");
				})
			})
		</script>
	</head>
	<body>
		<input type="button" value="选中id为two的div元素"  id="btn1"/><br />
		<input type="button" value="选中当前页面中所有的mini类的元素"  id="btn2"/><br />
		<input type="button" value="选中当前页面中div元素"  id="btn3"/><br />
		<input type="button" value="通配符选择器"  id="btn4"/><br />
		<input type="button" value="选中mini类元素和span元素"  id="btn5"/><br />
		<div id="one">
			<div class="mini">1-1</div>
		</div>
		<div id="two">
			<div class="mini">2-1</div>
			<div class="mini">2-2</div>
		</div>
		<div id="three">
			<div class="mini">3-1</div>
			<div class="mini">3-2</div>
			<div class="mini">3-3</div>
		</div>
		<div id="four">
			<span>span</span>
		</div>
	</body>
</html>

6. jQuery的层级选择器

  • 层级选择器
    • 子元素选择器 :selector1 selector2 (并集选择器)
    • 后代选择器:selector1 > selector2
    • 相邻兄弟选择器:selector1 + selector2
    • 所有兄弟选择器:selector1 ~ selector2
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>层级选择器</title>
		<link href="css/style.css" rel="stylesheet" />
		<script src="js/jquery-1.11.0.js"></script>
		<script>
			$(function(){
				//子元素选择器
				$("#btn1").click(function(){
					$("body div").css("background-color","#FFE0E9");
				});
				//后代选择器
				$("#btn2").click(function(){
					$("body > div").css("background-color","aquamarine");
				});
				//相邻兄弟选择器
				$("#btn3").click(function(){
					$("#one + #two").css("background-color","blanchedalmond");
				});
				//所有兄弟选择器
				$("#btn4").click(function(){
					$("#one ~ div").css("background-color","plum");
				})
			});
		</script>
	</head>
	<body>
		<input type="button" value="选中body中所有的div"  id="btn1"/><br />
		<input type="button" value="选中body中的子div"  id="btn2"/><br />
		<input type="button" value="选中one的相邻兄弟"  id="btn3"/><br />
		<input type="button" value="选中one的所有兄弟"  id="btn4"/><br />
		<div id="one">
			<div class="mini">1-1</div>
		</div>
		<div id="two">
			<div class="mini">2-1</div>
			<div class="mini">2-2</div>
		</div>
		<div id="three">
			<div class="mini">3-1</div>
			<div class="mini">3-2</div>
			<div class="mini">3-3</div>
		</div>
		<div id="four">
			<span>span</span>
		</div>
	</body>
</html>

7. jQuery的基本过滤器

  • 基本过滤器
    • 过滤出当前元素中第一个,选择器:first   /first()
    • 过滤出索引值为偶数的,选择器:even
    • 过滤出索引值为奇数的,选择器:odd
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>基本过滤器</title>
		<link href="css/style.css" rel="stylesheet"/>
		<script src="js/jquery-1.11.0.js"></script>
		<script>
			$(function(){
				$("#btn1").click(function(){
					$("div:first").css("background-color","paleturquoise");
//					$("div").first().css("background-color","paleturquoise");
				});
				
				$("#btn2").click(function(){
					$("div:even").css("background-color","lightblue");
				});
				
				$("#btn3").click(function(){
					$("div:odd").css("background-color","plum");
				});
			});
		</script>
	</head>
	<body>
		<input id="btn1" type="button" value="选中第一个div元素" /><br />
		<input id="btn2" type="button" value="选中索引值是偶数的div元素" /><br />
		<input id="btn3" type="button" value="选中索引值是奇数的div元素" /><br />
		
		<div id="one"><!--0-->
			<div class="mini">1-1</div><!--1-->
		</div>
		<div id="two"><!--2-->
			<div class="mini">2-1</div><!--3-->
			<div class="mini">2-2</div>
		</div>
		<div id="three">
			<div class="mini">3-1</div>
			<div class="mini">3-2</div>
			<div class="mini">3-3</div>
		</div>
<span id="four">span</span>
	</body>
</html>

8. jQuery的属性选择器

  • 格式
    • 标签[属性名称]
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title>属性选择器</title>
		<script src="js/jquery-1.11.0.js"></script>
		<script>
			$(function(){
				//单个属性,选中带有href属性的标签
				$("a[href]").css("background-color","palegoldenrod");
				//多个属性
				$("a[href][title]").css("background-color","peachpuff");
				//多个属性并有确定值
				$("a[href][title='test']").css("background-color","plum");

				//选中文本框
				$("input:text").css("background-color","lightsalmon");
				
				//下拉菜单
			    $("#btn1").click(function(){
			    	//选中option元素是否能选中:  :selected配所有选中的option元素
			    	$("option:selected").css("background-color","paleturquoise");
			    	//size():jQuery 对象中元素的个数
			    	alert($("option:selected").size()) ; 
			    });
			});
		</script>
	</head>
	<body>
		<a href="">超链接1</a><br />
		<a href="" title="test">超链接2</a>
		
		<input type="button" value="button" />
		<input type="text" />
		<!--mutiple属性:表示选中多个值的,多选-->
		<select multiple="multiple">
			<option>option1</option>
			<option>option2</option>
			<option>option3</option>
		</select>
		<input type="button" value="点击" id="btn1" />
	</body>
</html>

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值