JQuery的学习总结

首先:了解一下Jquery和JS的区别,以便于我们更清晰的学习Jquery.

一、本质区别

1.js都知道是网页脚本语言,类似java是一种开发常用语言;

2.jQuery是基于js语言封装出来的一个前端框架;

所以最本质的区别就是js是一种语言,而jQuery是基于该语言的一种框架。除却最本质的区别还有一些用法上的差别。
二、用法区别:

1.外观上jQuery对象比js对象多了"$()"一层马甲,这是最直观的区别;

2.操作内容

①.非表单元素(如果是文本就用text方法,如果是html代码就用html方法)

例:div.text();——无参数的情况下是取值

div.text(“aaaa”);——有参数的情况下是赋值

div.html();——无参数的情况下是取值

div.html(“aaaa”);——有参数的情况下是赋值

②.表单元素

JS:div.value;——取值;div.value = xxx;——赋值

JUQERY:div.val();——无参数是取值,有参数是赋值。


3.操作属性

JS里面用来操作属性的方法是

div.setAttribute("","");——设置属性、修改属性

div.removeAttribute("");——移除属性,引号里面写一个属性名

div.getAttribute();——获取属性

JQUERY里面用来操作属性的方法

添加属性:div.attr(“test”,“aa”);——给这个attr方法加入参数,属性名叫做test,属性的值是aa

移除属性:div.removeAttr(“test”);——移除test这条属性

获取属性:div.attr(“test”);——在attr方法里面直接写入一个属性的名就可以了


4.操作样式

JS里面操作样式的关键字是style

例:div.style.backgroundColor = “red”;——把这个div的背景色设置成为了红色

JQUERY里面操作样式的关键字是css

例:div.css(“background-color”,“yellow”);——把这个div的背景色变为黄色,在这里CSS里面所有的样式和css样式表里面的样式是一模一样的没有任何变化

JS操作样式的方法只能获取内联样式,不能取内嵌的和外部的!!!!!

下面,我们对JQ的具体方法并且举例子加深我们的理解。

//这个代码是单出网页提示的小窗口的
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<!--导包,引入JQ的文件-->
		<script type="text/javascript" src="../../js/jquery-1.11.0.js" ></script>
		
		<script>
			//js文档加载完成的事件
			window.onload = function(){
				alert("window.onload   111");
			}
			//会覆盖上面的“111”
			window.onload = function(){
				alert("window.onload   222");
			}
			
			/*文档加载完成的事件*/
			jQuery(document).ready(function(){
			 	alert("jQuery(document).ready(function()");
			});
			/*
			 	jQuery  简写成 $
			 */
			$(document).ready(function(){
			 	alert("$(document).ready(function()");
			});
			
			/*
				最简单的写法 
			*/
			$(function(){
				alert("$(function(){");
			});
			
		</script>
	</head>
	<body>
	</body>
</html>

下面是JS和JQ对象之间的转换:

//两个按钮,一个用了来作JS修改的,一个用来测试JQ修改,体现JS转JQ对象的骚操作,无非就是
//**var $div = $("#div1");**
//**var jsDiv = $div[0];**
//jsDiv.innerHTML="jq转成JS对象成功";
<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="../../js/jquery-1.11.0.js" ></script>
		<script>
			function changeJS(){
				var div = document.getElementById("div1");
//				div.innerHTML = "JS成功修改了内容"
				//将JS对象转成JQ对象
				$(div).html("转成JQ对象来修改内容")
			}
			//function是文档加载
			$(function(){
				//给按钮绑定事件
				$("#btn2").click(function(){
					//找到div1
//					$("#div1").html("JQ方式成功修改了内容");
					//将JQ对象转成JS对象来调用
					**var $div = $("#div1");**
//					var jsDiv = $div.get(0);
					**var jsDiv = $div[0];**
					jsDiv.innerHTML="jq转成JS对象成功";
				});
			});
			
			
		</script>
	</head>
	<body>
		<input type="button" value="JS修改div内容" onclick="changeJS()" />
		<input type="button" value="JQ方式修改div内容" **id="btn2**" />
		<div id**="div1"**>
			这里的内容一会要被JS/JQ代码修改掉
		</div>
		<div id="div1">
			这里的内容一会要被JS/JQ代码修改掉1111
		</div>
	</body>
</html>

JQ的动画效果:


<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
		
		<!--
			1. 导入JQ相关的文件
			2.  文档加载完成事件: $(function)  : 页面初始化的操作: 绑定事件, 启动页面定时器
			3. 确定相关操作的事件
			4. 事件触发函数
			5. 函数里面再去操作相关的元素
		-->
		//这一段相当于导入包的意思吧,不导入,JQ运行不了
		<script type="text/javascript" src="../../js/jquery-1.11.0.js" ></script>
		
		<script>
			$(function(){
				
				//显示页面图片
				//给按钮绑定事件
				$("#btn1").click(function(){
//					$("#img1").show();
//					$("#img1").slideDown();
//					$("#img1").fadeIn(5000);

					$("#img1").animate({ width:"800px",opacity:"1"},5000);
					
				});
				
				//隐藏页面图片
				//获取button的id,设置函数
				$("#btn2").click(function(){
					//获得img
					//隐藏,给图片制造函数。
//					$("#img1").hide(10000);
//这个是改变高度隐藏
//					$("#img1").slideUp(500);
//					$("#img1").fadeOut(5000);
					$("#img1").animate({ width:"1366px",opacity:"0.2"},5000);
				});
			});
		</script>
	</head>
	<body>
		<input type="button" value="显示" id="btn1" /> 
		<input type="button" value="隐藏" id="btn2"/> <br />
		<img src="../../img/333.png" id="img1" width="500px" />
	</body>
</html>

网页定时弹出广告:


<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="../js/jquery-1.11.0.js" ></script>
		<!--
			1. 导入JQ的文件
			2. 编写JQ的文档加载事件
			3.  启动定时器 setTimeout("",3000);
			4. 编写显示广告的函数
			5. 在显示广告里面再启动一个定时器
			6. 编写隐藏广告的函数
		-->
		<script>
			//显示广告
			function showAd(){
			//给图片设置动作函数
				$("#img1").slideDown(2000);
			//调用隐藏函数一次,时间30000ms
				setTimeout("hideAd()",3000);
			}
			
			//隐藏广告
			function hideAd(){
				$("#img1").slideUp(2000);
			}
			
			//先自动加载这个显示函数,然后调用showad()显示函数
			$(function(){
				setTimeout("showAd()",3000);
				
			});
		</script>
	</head>
	<body>
		<img src="../img/f001a62f-a49d-4a4d-b56f-2b6908a0002c_g.jpg" id="img1" width="100%" style="display:none"  />
	</body>
</html>

JQ的隔行换色:


<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<script type="text/javascript" src="../js/jquery-1.11.0.js" ></script>
		<!--
			1. 导入JQ的包
			2. 文档加载完成函数: 页面初始化
			3. 获得所有的行 :   元素选择器
			4. 根据行号奇数/偶数去修改颜色
		-->
		<script>
			
			$(function(){
				//获得所有的行 :   元素选择器
				//这里是后代选择器,jq里面调用CSS是$.().css(" ")
				$("tbody > tr:even").css("background-color","#CCCCCC");
				//修改基数行
				$("tbody > tr:odd").css("background-color","#FFF38F");
//				$("tbody > tr").css("background-color","#FFF38F");
				
				
			});
		</script>
	</head>
	<body>
		<table border="1px" width="600px" id="tab">
			<thead>
				<tr >
					<td>
						<input type="checkbox" />
					</td>
					<td>分类ID</td>
					<td>分类名称</td>
					<td>分类商品</td>
					<td>分类描述</td>
					<td>操作</td>
				</tr>
			</thead>
			<tbody>
				<tr>
				<td>
					<input type="checkbox" />
				</td>
				<td>1</td>
				<td>手机数码</td>
				<td>华为,小米,尼康</td>
				<td>黑马数码产品质量最好</td>
				<td>
					<a href="#">修改</a>|<a href="#">删除</a>
				</td>
			</tr>
			<tr>
				<td>
					<input type="checkbox" />
				</td>
				<td>2</td>
				<td>成人用品</td>
				<td>充气的</td>
				<td>这里面的充气电动硅胶的</td>
				<td><a href="#">修改</a>|<a href="#">删除</a></td>
			</tr>
			<tr>
				<td>
					<input type="checkbox" />
				</td>
				<td>3</td>
				<td>电脑办公</td>
				<td>联想,小米</td>
				<td>笔记本特卖</td>
				<td><a href="#">修改</a>|<a href="#">删除</a></td>
			</tr>
			<tr>
				<td>
					<input type="checkbox" />
				</td>
				<td>4</td>
				<td>馋嘴零食</td>
				<td>辣条,麻花,黄瓜</td>
				<td>年货</td>
				<td><a href="#">修改</a>|<a href="#">删除</a></td>
			</tr>
			<tr>
				<td>
					<input type="checkbox" />
				</td>
				<td>5</td>
				<td>床上用品</td>
				<td>床单,被套,四件套</td>
				<td>都是套子</td>
				<td><a href="#">修改</a>|<a href="#">删除</a></td>
			</tr>
			</tbody>
		</table>
		
	</body>
</html>

JS的DOM操作:


<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		
		<script type="text/javascript" src="../js/jquery-1.11.0.js" ></script>
		
		<script>
			//文档加载完成事件
			$(function(){
				//绑定点击事件
				$("#btn1").click(function(){
//					$("#div1").append("<font color='red' size='7'>来,互相伤害呀!</font>")
//					$("#div1").prepend("<font color='red' size='7'>来,互相伤害呀!</font>");
					$("#div1").after("<font color='red' size='7'>来,互相伤害呀!</font>");
//					$("<font color='red' size='7'>来,互相伤害呀!</font>").appendTo("#div1")
				});
			});
		</script>
	</head>
	<body>
		<input type="button" id="btn1" value="来,互相伤害!" /><br />
		
		
		<div id="div1">
			这里一会要添加内容
		</div>
	</body>
</html>

猜你喜欢

转载自blog.csdn.net/StrongHelper/article/details/84778696