学习笔记——jQuery

Posted 别呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习笔记——jQuery相关的知识,希望对你有一定的参考价值。

一、class 操作

API描述
addClass( )为每个匹配的元素添加指定的类名
removeClass( )从所有匹配的元素中删除全部或者指定的类
hasClass( )检查当前的元素是否含有某个特定的类,如果有,则返回true
toggleClass( )如果存在(不存在)就删除(添加)一个类

示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Class操作</title>
		<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.slim.min.js"></script>
		<style>
			#box{
				height: 200px;
				width: 200px;
				margin-top: 10px;
				background-color: green;
			}
			.fontsize20{
				font-size: 20px;
			}
			.fontcolor{
				color: aqua;
			}
		</style>
	</head>
	<body>
		<input type="button" id="addClass" value="添加类">
		<input type="button" id="hasClass" value="判断类">
		<input type="button" id="removeClass" value="移除类">
		<input type="button" id="toggleClass" value="切换类">
		<div id="box">凤兮凤兮归故乡,遨游四海求其凰</div>

		<script type="text/javascript">
			$("#addClass").click(function(){
			    //给id为box的div添加类
			    $("#box").addClass("fontcolor fontsize20");
			});
			$("#hasClass").click(function () {
			     //判断元素是否有class,有则返回true,否则false
				console.log($("#box").hasClass("fontsize20"));
            });
			$("#removeClass").click(function () {
			     //给id为box的div移除类
				$("#box").removeClass("fontcolor fontsize20");
            });
			$("#toggleClass").click(function () {
			     //如果元素有某个class,则移除掉,否则添加
				$("#box").toggleClass("fontcolor");
            });
		</script>
	</body>
</html>

结果:


二、Tab 栏切换

示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>Class操作</title>
		<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.6.0/jquery.slim.min.js"></script>
		<style type="text/css">
			* {
				margin: 0;
				padding: 0;
			}

			ul {
				list-style: none;
			}

			.wrapper {
				width: 1000px;
				height: 475px;
				margin: 0 auto;
				margin-top: 100px;
			}

			.tab {
				border: 1px solid #ddd;
				border-bottom: 0;
				height: 36px;
				width: 320px;
			}

			.tab li {
				position: relative;
				float: left;
				width: 80px;
				height: 34px;
				line-height: 34px;
				text-align: center;
				cursor: pointer;       /*鼠标指针放在一个元素边界范围内时所用的光标形状*/
				border-top: 4px solid #fff;
			}

			.tab span {
				position: absolute;
				right: 0;
				top: 10px;
				background: #ddd;
				width: 1px;
				height: 14px;
				overflow: hidden;
			}

			.products {
				width: 1002px;
				border: 1px solid #ddd;
				height: 476px;
			}

			.products .main {
				float: left;
				/* 隐藏 */
				display: none;
			}

			.products .main.selected {
				/* 显示 */
				display: block;
			}

			.tab li.active {
				border-color: red;
				border-bottom: 0;
			}
		</style>
	</head>
	<body>
		<div class="wrapper">
		    <ul class="tab">
		        <li class="tab-item active">椰子</li>
		        <li class="tab-item">air max</li>
		        <li class="tab-item">aj1</li>
		        <li class="tab-item">aj杂</li>
		    </ul>
		    <div class="products">
		        <div class="main selected">
		            <a href="###"><img src="images/yz.jpg" alt=""/></a>
		        </div>
		        <div class="main">
		            <a href="###"><img src="images/max.jpg" alt=""/></a>
		        </div>
		        <div class="main">
		            <a href="###"><img src="images/aj1.jpg"/></a>
		        </div>
		        <div class="main">
		            <a href="###"><img src="images/aj2.jpg"/></a>
		        </div>
		    </div>
		</div>
		<script type="text/javascript">
			//需求:给tab栏的每一 个1i标签设置鼠标移入事件,当前1i添加active值, 其他的兄弟元素1i移除active
			// 找到当前tab栏 下标一致的div, 添加selected, 其他的兄弟元素div移除selected
			$(".tab>li").mouseenter(function () {
			    //当前的1i添加active
				$(this).addClass("active").siblings().removeClass("active");
				//获取当前1i的下标
				var index = $(this).index();
				$(".products>.main").eq(index).addClass("selected").siblings().removeClass("selected");
            });

		</script>
	</body>
</html>

结果:


三、JQ 动画

常用的函数描述
hide()隐藏
show()显示
toggle()切换
slideDown()滑入
slideUp()滑出
fadeIn()淡入
fadeOut()淡出
animate()动画

注意
① 前七个函数:若直接调用函数,没有动画效果,如果想要有动画效果,就需要提供参数;带参数的话这些函数的参数均类似,这里就以 show 为例:

1 代表执行动画的时长,毫秒值,代表时长的字符串有:fast(代表200ms),norma(代表400ms),slow(代表600ms)
注意: 如果代表时长的字符串写错了,默认提供的就是normal
2. 回调函数

animate()函数共有3个参数:

参数1:必须传入,对象:代表的是需要做动画的属性  
参数2:可选的,代表执行动画的时长,毫秒值
参数3:可选的,匀速(linear)还是缓动(swing)
参数4:可选的,动画执行完之后的回调函数

示例 1

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>动画</title>
		<style>
			#box{
				width: 200px;
				height: 200px;
				background-color: aqua;
				display: none;
			}
		</style>
	</head>
	<body>
		<input type="button" value="显示" id="show">
		<input type="button" value="隐藏" id="hide">
		<input type="button" value="切换" id="toggle">
		<input type="button" value="滑入" id="slideDown">
		<input type="button" value="滑出" id="slideUp">
		<input type="button" value="淡入" id="fadeIn">
		<input type="button" value="淡出" id="fadeOut">
		<div id="box"></div>
		<script src="jquery-1.11.3.min.js" type="text/javascript" charset="utf-8"></script>
		<script>
			$("#show").click(function(){
				$("#box").show("slow",function(){
					console.log("动画执行完毕");
				});
			});

			$("#hide").click(function(){
				$("#box").hide("slow",function(){});
			});
			// 切换:如果元素是隐藏状态那么就设置显示,如果是显示状态,就设置隐藏
			$("#toggle").click(function(){
				$("#box").toggle(600,function(){});
			});
			$("#slideDown").click(function(){
				// 滑入
				$("#box").slideDown(600);
			});
			$("#slideUp").click(function(){
				// 滑出
				$("#box").slideUp(600);
			});

			$("#fadeIn").click(function(){
				// 淡入
				$("#box").fadeIn(600);
			});
			$("#fadeOut").click(function(){
				// 淡入
				$("#box").fadeOut(600);
			});

		</script>
	</body>
</html>

结果:

示例 2

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>动画</title>
		<style>
			#box1{
				width: 50px;
				height: 50px;
				background-color: aqua;
				color: #000;
				position: absolute;
				left: 0;
				top: 50px;
			}
			#box2{
				width: 50px;
				height: 50px;
				background-color: aqua;
				position: absolute;
				left: 0;
				top: 120px;
			}
			#box3{
				width: 50px;
				height: 50px;
				background-color: aqua;
				position: absolute;
				left: 0;
				top: 190px;
			}
			#border{
				width: 0px;
				height: 400px;
				border-left: 1px solid black;
				position: absolute;
				left: 400px;
			}
		</style>
	</head>
	<body>
		<button id="btn">box移动</button>

		<div id="box1">我在匀速移动</div>
		<div id="box2">我在缓速移动</div>
		<div id="box3">注意我的变化</div>
		<div id="border"></div>


		<script src="jquery-1.11.3.min.js" type="text/javascript" charset="utf-8"></script>

		<script>

			$("#btn").click(function () {
				$("#box1").animate({left:400},3000,"linear");

				$("#box2").animate({left:400},3000,"swing");

				//注意可以嵌套,使div移动方向、大小等改变
				$("#box3").animate({left:400,width:100,height:100},3000,"linear",function(){
				    $("#box3").animate({left:30,width:200,height:200},2000,"linear");
				});
            });
		</script>
	</body>
</html>

结果:


四、元素操作

4.1、html() 、$()和 empty()

html()
如果不带参数,则是代表获取内容;
如果传入参数,则是设置内容;
如果内容中包含了标签,会把标签解析出来;

$()
以创建标签,但是创建标签只存在内存中,如果需要在页面上显示,就需要追加;

示例

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>动画</title>
		<style>
			img{
				width: 140px;
				height: 100px;
			}
		</style>
	</head>
	<body>
		<input type="button" id="btnhtml" value="html()"/>
		<input type="button" id="btn2" value="$()"/>
		<input type="button" id="btn3"	value="empty()"/>
		<img src="https://i04piccdn.sogoucdn.com/81c412b6e9e216c1" alt="鲁班七号">
		<div id="box">
			<p>p1
			<span>span</span>
			</p>
		</div>

		<script src="jquery-1.11.3.min.js" type="text/javascript" charset="utf-8"></script>
		<script>
			$("#btnhtml").click(function() {
                //不带参数,则是代表获取内容
                console.log($("#box").html());
                //传入参数,则是设置内容
                $("#box").html("我是设置的内容");//会把原来的内容覆盖
				//内容中包含了标签,会把标签解析出来
				$("#box").html("我是设置的内容是<a href='https://www. baidu.com'>百度一下</a>");
            });
			$("#btn2").click(

以上是关于学习笔记——jQuery的主要内容,如果未能解决你的问题,请参考以下文章

web前端开发JQuery常用实例代码片段(50个)

[原创]java WEB学习笔记61:Struts2学习之路--通用标签 property,uri,param,set,push,if-else,itertor,sort,date,a标签等(代码片段

jQuery源代码学习笔记:jQuery.fn.init(selector,context,rootjQuery)代码具体解释

JQuery学习笔记

JQuery的学习笔记

jQuery学习笔记