jQuery基础知识总结

  在开始学习 jQuery 之前,应该对以下知识所有基本的了解:
    HTML
    CSS
    JavaScript

一、什么是 jQuery ?

  jQuery是一个轻量级的"写的少,做的多"的JavaScript函数库。[独立的javascript文件]

  jQuery库包含以下功能:
    1.HTML 元素选取
    2.HTML 元素操作
    3.CSS 操作
    4.HTML 事件函数
    5.JavaScript 特效和动画
    6.HTML DOM 遍历和修改

二、jQuery 安装

  可以通过多种方法在网页中添加 jQuery。 您可以使用以下方法:

  1. jquery.com官网 下载 jQuery 库
    production jQuery 3.5.1— https://code.jquery.com/jquery-3.5.1.min.js
    development jQuery 3.5.1—https://code.jquery.com/jquery-3.5.1.js

  如果开发测试使用development jQuery 3.5.1,有注释可以查看具体的内容。
  如果发布使用production jQuery 3.5.1,小,节省内存。
  通过script标记导入到网页中

<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="jquery-3.5.1.js"></script>
		<script>
			$(function(){
				alert("测试导入jquery");
			});
		</script>
	</head>
	<body>
	</body>
</html>
  1. 通过网络地址导入jquery
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<!--<script src="jquery-3.5.1.js"></script>-->
		<!--<script src="https://cdn.staticfile.org/jquery/1.10.2/jquery.min.js"></script>-->
		<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
		<script>
			$(function(){
				alert("测试导入jquery");
			});
		</script>
	</head>
	<body>
	</body>
</html>

三、jQuery入口函数

	(1) $(document).ready(function(){})

	(2)jquery(document).ready(function(){})

	(3)$(function(){})   推荐

四、jQuery 选择器

  jQuery 选择器允许您对 HTML 元素组或单个元素进行操作。
  1.元素选择器
    jQuery 元素选择器基于元素名选取元素。
  2.#id 选择器
    jQuery #id 选择器通过 HTML 元素的 id 属性选取指定的元素。
    页面中元素的 id 应该是唯一的,所以您要在页面中选取唯一的元素需要通过 #id 选择器。
  3. .class 选择器
    jQuery 类选择器可以通过指定的 class 查找元素。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="jquery-3.5.1.js"></script>
		<script>
			$(function(){
				//元素选择器
				$("p").css("background-color","black");
				//.class选择器
				$("p.test1").css("color","red");
				//id选择器
				$("#test2").css("color","blue");
				$("p:first").css("color","green");
				$("ul li:first").css("font-size","30px");
				$("ul li:last-child").css("font-size","40px");
				$("[href]").css("font-size","20px");
				$(":button").css("width","180px");
				$("table").css("width","480px");
				$("tr:even").css("background-color","red");
				$("tr:odd").css("background-color","blue");
			});
		</script>
	</head>
	<body>
		<p>测试jquery的基础语法1</p>
		<p class="test1">测试jquery的基础语法2</p>
		<p>测试jquery的基础语法3</p>
		<p id="test2">测试jquery的基础语法4</p>
		<ul>
			<li>name=zhangsan</li>
			<li>age=23</li>
			<li>address=xian</li>
		</ul>
		<ul>
			<li>name=lisi</li>
			<li>age=23</li>
			<li>address=xian</li>
		</ul>
		<ul>
			<li><a href="#">name=wangwu</a></li>
			<li><a href="#">age=23</a></li>
			<li><a href="#">address=xian</a></li>
		</ul>
		<input type="button" value="测试button1"/>
		<input type="button" value="测试button2"/>
		<table border="1px">
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1003</td><td>王五</td><td>24</td><td>西安</td></tr>
			<tr><td>1002</td><td>lisi</td><td>25</td><td>西安</td></tr>
			<tr><td>1001</td><td>zhangsan</td><td>23</td><td>西安</td></tr>
			<tr><td>1003</td><td>王五</td><td>24</td><td>西安</td></tr>
			<tr><td>1002</td><td>lisi</td><td>25</td><td>西安</td></tr>
		</table>
	</body>
</html>

五、jQuery HTML

1.jQuery获取/设置文本元素的值

   jQuery获取元素的值 text()、html() 以及 val()
   text()—返回所选元素的文本内容
   html()–返回所选元素的内容(包括 HTML 标记)
   val()----返回表单字段的值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script  src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				$("#but1").click(function(){
					//alert($("#div1").text());
					//alert($("#but1").text()); //错误
					//alert($("#text1").text());//错误
					//alert($("#div1").html());
					//alert($("#but1").val());
				});
			});			
		</script>
	</head>
	<body>
		 <h1>jQuery获取元素的值  text()、html() 以及 val()</h1>
		 <h2>text()---返回所选元素的文本内容</h2>
		 <h2>html()--返回所选元素的内容(包括 HTML 标记)</h2>
		 <h2>val()----返回表单字段的值</h2>
		 <hr>
		 <input id="but1"  type="button" value="测试" />
		  <input id="text1"  type="text" value="测试text" />
		 <div id="div1">
			  <h1>测试jQuery获取元素的值1</h1>
			  <h1>测试jQuery获取元素的值2</h1>
		 </div>	 
	</body>
</html>

2. jQuery设置元素的值 text(value)、html(value) 以及 val(value)
   text(value)—设置所选元素的文本内容
   html(value)–设置所选元素的内容(包括 HTML 标记)
   val(value)----设置表单字段的值

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script  src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				$("#but2").click(function(){
					//$("#div2").text("hello,world");
					//$("#div2").text("<h1>hello,world</h1>");
					$("#div2").html("<h1>hello,world</h1>");
					$("#but1").val("测试jqueryh获取元素值");
				});
			});			
		</script>
	</head>
	<body>
		 <input id="but2"  type="button" value="测试" />
		 <div id="div2"></div>	
	</body>
</html>
jQuery - 添加元素
•	append() - 在被选中元素中插入内容【由下往上】
•	after() - 在被选元素之后插入内容
•	before() - 在被选元素之前插入内容
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			#div1{
				background-color: red;
				width: 300px;
				height: 300px;
			}
		</style>
		<script  src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				
				$("#but1").click(function(){
					$("#div1").append("hello");
					$("#div1").append("<h2>hello</h2>");
					$("#div1").append("<img src='imgs/avatar5.png'/>");
				});
				
			   
				$("#but2").click(function(){
					$("#div1").prepend("hello");
					$("#div1").prepend("<h2>hello</h2>");
					$("#div1").prepend("<img src='imgs/avatar5.png'/>");
				});
				
				$("#but3").click(function(){
					//$("#div1").after("hello");
					//$("#div1").after("<h2>hello</h2>");
					$("#div1").after("<img src='imgs/avatar5.png'/>");
				});
				
				$("#but4").click(function(){
					//$("#div1").before("hello");
					//$("#div1").before("<h2>hello</h2>");
					$("#div1").before("<img src='imgs/avatar5.png'/>");
				});
			});
		</script>
	</head>
	<body>
		<input id="but1" type="button" value="测试append"  />
		<input id="but2" type="button" value="测试prepend"  />
		<input id="but3" type="button" value="测试after"  />
		<input id="but4" type="button" value="测试before"  /><br>
		<div id="div1"></div>
	</body>
</html>

六、jQuery - 删除元素

  remove() - 删除被选元素(及其子元素)【有过滤功能】
  empty() - 从被选元素中删除子元素

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style>
			#div1{
				background-color: red;
				width: 300px;
				height: 300px;
			}
		</style>
		<script  src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				$("#but1").click(function(){
					$("#div1").empty();
				});
				$("#but2").click(function(){
					$("#div1").remove();
				});
			});
		</script>
	</head>
	<body>
		<input id="but1" type="button" value="测试empty()" />
		<input id="but2" type="button" value="测试remove()" /><br>
		<div id="div1">
			<img src='imgs/avatar5.png'/>
		</div>
	</body>
</html>

七、jquery的CSS 操作

1.为元素添加已经存在的样式
  • addClass() - 向被选元素添加一个或多个样式类
  • removeClass() - 从被选元素删除一个或多个类
  • toggleClass() - 对被选元素进行添加/删除类的切换操作

2.设置/获取元素样式
  css() - 设置或返回样式属性
  css(样式属性名称) 返回被选元素的指定样式属性值。
  css(样式属性名称,属性值) 设置被选元素的具有这个样式。
  css({样式属性名称:属性值,样式属性名称:属性值}) 设置被选元素具有一组样式。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>jquery的CSS 操作</title>
		<style>
			.div1{
				width: 200px;
				height: 200px;
				background-color: red;
			}
			#div2{
				width: 200px;
				height: 200px;
				background-color: blue;
			}
			#div3{
				width: 200px;
				height: 200px;
				background-color: yellow;
			}
		</style>
		<!-- 导入jquery函数库 -->
		<script src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				$("#but1").click(function(){
					//addClass() - 向被选元素添加一个或多个样式类
					$("#div1").addClass("div1");
				});
				$("#but2").click(function(){
					//removeClass() - 从被选元素删除一个或多个类
					$("#div1").removeClass("div1");
				});
				$("#but3").click(function(){
					//toggleClass() - 对被选元素进行添加/删除类的切换操作
					$("#div1").toggleClass("div1");
				});
				
				$("#but11").click(function(){
					//css(样式属性名称) 返回被选元素的指定样式属性值
					alert($("#p1").css("font-size"));
				});
				$("#but22").click(function(){
					//css(样式属性名称,属性值) 设置被选元素的具有这个样式。
					$("#p2").css("font-size","50px");
				});
				$("#but33").click(function(){
					//css({样式属性名称:属性值,样式属性名称:属性值}) 设置被选元素具有一组样式。
					$("#p3").css({"font-size":"50px","color":"red"});
				});
			});
		</script>
	</head>
	<body>
		<input id="but1" type="button" value="测试addClass()">
		<input id="but2" type="button" value="测试removeClass()">
		<input id="but3" type="button" value="测试toggleClass()">
		<h1>1.为元素添加已经存在的样式</h1>
		<h2>addClass() - 向被选元素添加一个或多个样式类</h2>
		<h2>removeClass() - 从被选元素删除一个或多个类</h2>
		<h2>toggleClass() - 对被选元素进行添加/删除类的切换操作</h2>
		<div id="div1" ></div>
		<h1>2.设置/获取元素样式</h1>
		<h2>1.css(样式属性名称) 返回被选元素的指定样式属性值。</h2>
		<h2>2.css(样式属性名称,属性值) 设置被选元素的具有这个样式。</h2>
		<h2>3.css({样式属性名称:属性值,样式属性名称:属性值}) 设置被选元素具有一组样式。</h2>
		<input id="but11" type="button" value="测试获取元素指定的样式值">
		<input id="but22" type="button" value="测试设置被选元素的具有某个样式">
		<input id="but33" type="button" value="测试设置被选元素具有一组样式">
		<p id="p1" style="font-size: 30px;color: red;">测试获取元素指定的样式值</p>
		<p id="p2" >测试设置被选元素的具有某个样式</p>
		<p id="p3" >测试设置被选元素具有一组样式</p>
	</body>
</html>

八、jQuery 事件

jQuery 事件方法语法
  在 jQuery 中,大多数 DOM 事件都有一个等效的 jQuery 方法。
  页面中指定一个点击事件:

$("p").click();

下一步是定义什么时间触发事件。您可以通过一个事件函数实现:

$("p").click(function(){ // 动作触发后执行的代码!! });

常用的 jQuery 事件方法

1.	$(document).ready(function) 文档完全加载完后执行函数
2.	click(function) 方法是当按钮点击事件被触发时会调用一个函数
3.	dblclick(function)双击元素时,会发生 dblclick 事件。
4.	mouseenter(function)当鼠标指针穿过元素时,会发生 mouseenter 事件。
5.	mouseleave(function)当鼠标指针离开元素时,会发生 mouseleave 事件。
6.	hover(function)方法用于模拟光标悬停事件。
7.	focus(function)当元素获得焦点时,发生 focus 事件。
8.	blur(function)当元素失去焦点时,发生 blur 事件。
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="jquery-3.5.1.js"></script>
		<script>
			$(document).ready(function(){
				alert("$(document).ready(function) 文档完全加载完后执行函数");
			});
			$(document).ready(function(){
				$("#but1").click(function(){
					alert("click(function) 方法是当按钮点击事件被触发时会调用一个函数");
				});
				
				$("#but2").dblclick(function(){
					alert("dblclick(function)双击元素时,会发生 dblclick 事件。");
				});
				
				$("#h2").mouseenter(function(){
					alert("4.mouseenter(function)当鼠标指针穿过元素时,会发生 mouseenter 事件。");
				});
				$("#h2").mouseleave(function(){
					alert("5.mouseleave(function)当鼠标指针离开元素时,会发生 mouseleave 事件。");
				});
				$("#a1").hover(function(){
					alert("6.hover(function)用于模拟光标悬停事件。");
				});
				
				$("#text1").focus(function(){
					$(this).val("background-color");
				});
				$("#text1").blur(function(){
				   alert($(this).val());
				});
			});
		</script>	
	</head>
	<body>
		<input id="but1" type="button" value="测试单击事件"><br>
		<input id="but2" type="button" value="测试双击事件"><br>
		<h2 id="h2">测试鼠标进入和移出事件</h2>
		<a id="a1" href="#">测试光标悬停事件</a><br><br><br>
		<input id="text1" type="text" value="测试获得焦点和失去焦点事件"><br>
	</body>
</html>

九、JavaScript 特效和动画【就是元素的隐藏和显示】

  jQuery hide() 隐藏元素
  jQuery show() 显示元素

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script  src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				$("#but2").click(function(){
					var buttext=$("#but2").val();
					if(buttext=="隐藏"){
						//$("#img2").hide();
						//$("#img2").hide(3000);
						$("#img2").hide(5000,function(){
							$("#but2").val("显示");
						});
					}
					if(buttext=="显示"){
						//$("#img2").show();
						//$("#img2").show(3000);
						$("#img2").show(5000,function(){
							$("#but2").val("隐藏");
						});	
					}
				});
			});
		</script>
	</head>
	<body>
		<input  id="but2" type="button" value="隐藏"/><br>
		<img id="img2" src="imgs/avatar.png"/>
	</body>
</html>

  jQuery fadeIn() 用于淡入已隐藏的元素。
  jQuery fadeOut() 方法用于淡出可见元素。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script  src="js/jquery-3.5.1.js"></script>
			<script>
			$(function(){
				$("#but3").click(function(){
					var buttext=$("#but3").val();
					if(buttext=="淡出"){
						//$("#img3").fadeOut();
						//$("#img3").fadeOut(3000);
						//$("#but3").val("淡入");
						
						$("#img3").fadeOut(5000,function(){
							$("#but3").val("淡入");
						});					   
					}
					if(buttext=="淡入"){
						//$("#img3").fadeIn();
						//$("#img3").fadeIn(3000);
						//$("#but3").val("淡出");
						$("#img3").fadeIn(5000,function(){
							$("#but3").val("淡出");
						});
						
					}
				});
			});
		</script>
	</head>
	<body>
		<input  id="but3" type="button" value="淡出"/><br>
		<img id="img3" src="imgs/avatar.png"/>
	</body>
</html>

jQuery slideDown() 方法用于向下滑动元素。
jQuery slideUp() 方法用于向上滑动元素。
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script  src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				$("#but4").click(function(){
					var buttext=$("#but4").val();
					if(buttext=="滑出"){
						//$("#img4").slideUp();
						$("#img4").slideUp(3000);
						$("#but4").val("滑入");
						/*
						$("#img4").slideUp(5000,function(){
							$("#but4").val("滑入");
						});
						*/
					}
					if(buttext=="滑入"){
						//$("#img4").slideDown();
						$("#img4").slideDown(3000);
						$("#but4").val("滑出");
						/*
						$("#img4").slideDown(5000,function(){
							$("#but4").val("滑出");
						});
					    */
					}
				});
			});
		</script>
	</head>
	<body>
		<input  id="but4" type="button" value="滑出"/><br>
		<img id="img4" src="imgs/avatar.png"/>
	</body>
</html>

jQuery 效果- 动画

  jQuery animate() 方法允许您创建自定义的动画。
  语法:

$(selector).animate({params},speed,callback);

  必需的 params 参数定义形成动画的 CSS 属性.
  可选的 speed 参数规定效果的时长。它可以取以下值:“slow”、“fast” 或毫秒。
  可选的 callback 参数是动画完成后所执行的函数名称。

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script  src="js/jquery-3.5.1.js"></script>
		<script>
			$(function(){
				$("#but1").click(function(){
					$("#div1").animate({left:"300px",top:"300px",width:"200px",height:"200px"},5000,function(){
						alert("动画执行结束");
					});
				});
			});
		</script>
	</head>
	<body>
		<h1>jQuery animate() 方法允许您创建自定义的动画。</h1>
		<h2>语法:$(selector).animate({params},speed,callback);</h2>
		<h2>必需的 params 参数定义形成动画的 CSS 属性.</h2>
		<h2>可选的 speed 参数规定效果的时长。它可以取以下值:"slow"、"fast" 或毫秒。</h2>
		<h2>可选的 callback 参数是动画完成后所执行的函数名称。</h2>
		<input id="but1" type="button"  value="开始动画"/>
		<div id="div1" style="background:#98bf21;height:100px;width:100px;position:absolute;">
		</div>
	</body>
</html>
jQuery 停止动画
jQuery stop() 方法用于停止动画或效果,在它们完成之前。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style type="text/css"> 
#panel,#flip,#updiv{
	padding:5px;
	text-align:center;
	background-color:#e5eecc;
	border:solid 1px #c3c3c3;
}
#panel
{
	padding:50px;
	display:none;
}
#updiv{
	display:none;
}
</style>
<script  src="js/jquery-3.5.1.js"></script>
<script> 
$(function(){
  $("#flip").click(function(){
    $("#panel").slideDown(5000,function(){
		 $("#updiv").show();
	});
  });
  $("#stop").click(function(){
    $("#panel").stop();
  });
  
  $("#updiv").click(function(){
    $("#panel").slideUp(5000,function(){
		 $("#updiv").hide();
	});
  });
});
</script>
 
</head>
<body>
	<button id="stop">停止滑动</button>
	<div id="flip">点我向下滑动面板</div>
	<div id="panel">Hello world!</div>
	<div id="updiv">点我向上滑动面板</div>
</body>
</html>

十、jQuery - 链(Chaining)

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<style>
	#div1{
		background-color: red;
		width: 200px;
		height: 200px;
		border-radius: 100px;
	}
	#div2{
		background-color: yellow;
		width: 200px;
		height: 200px;
		border-radius: 100px;
	}
</style>
<script  src="js/jquery-3.5.1.js"></script>
</script>
<script>
$(function(){
  $("#but1").click(function(){
	  //延迟执行的函数
	   setTimeout(function(){
		   for(var i=1;i<=10;i++){
			    $("#div1").fadeOut(500).fadeIn(500);
		   }
	   },0);  
	  setTimeout(function(){
	  		   for(var i=1;i<=10;i++){
	  			    $("#div2").fadeOut(500).fadeIn(500);
	  		   }
	  },10000); 
  });
});
</script>
</head>
<body>
	<input id="but1" type="button"  value="红灯亮"/>
	<div id="div1"></div>
	<div id="div2"></div>
</body>
</html>
6.HTML DOM 遍历和修改
   jQuery each() 方法
  语法
$(selector).each(function(index,element){   })
必需。为每个匹配元素规定运行的函数。
index - 被遍历出的每一个元素在数组中的位置
element - 当前的元素【javascript的DOM对象】(也可使用 "this" 选择器)
each() 方法为每个匹配元素规定要运行的函数。
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>HTML DOM 遍历和修改</title>
		<!-- 导入jquery函数库 -->
		<script src="js/jquery-3.5.1.js"></script>
		<script>
		$(function(){
		  $("#but1").click(function(){
			$("p").each(function(index,element){
				var si=index*10+10;
				$(element).css("font-size",si+"px");
			});
		  });
		});
		</script>
	</head>
	<body>
		<h1>HTML DOM 遍历和修改</h1>
		<h2>jQuery each() 方法</h2>
		<h2>语法</h2>
		$(selector).each(function(index,element){   })</h2>
		<h2>必需。为每个匹配元素规定运行的函数。</h2>
		<h2>index - 被遍历出的每一个元素在数组中的位置</h2>
		<h2>element - 当前的元素【javascript的DOM对象】(也可使用 "this" 选择器)</h2>
        <input id="but1" type="button" value="each" />
        <p>测试用的p元素1</p>
        <p>测试用的p元素2</p>
        <p>测试用的p元素3</p>
        <p>测试用的p元素4</p>
	</body>
</html>
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值