jQuery(二)

效果

显示隐藏动画

show(),hide(),toggle()

显示、隐藏、切换

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<style type="text/css">
			* {
				margin: 0px;
				padding: 0px;
			}
			div {
				width: 200px;
				height: 200px;
				background-color: blue;
				display: none;
			}
		</style>
		<title></title>
		<script src="../jquery.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function(){
				$("button").eq(0).click(function(){
					$("div").show(1000, function(){
						alert("显示完成");
					});});
				$("button").eq(1).click(function(){
					$("div").hide(1000, function(){
						alert("隐藏完成");
					});});
				$("button").eq(2).click(function(){
					$("div").toggle(1000, function(){
						alert("切换完成");
					});});
				})
		</script>
	</head>
	<body>
		<button type="button">显示</button>
		<button type="button">隐藏</button>
		<button type="button">切换</button>
		<div id="">
			
		</div>
	</body>
</html>

对联广告

监听网页滚动:scroll()
获取网页滚动的偏移位:var off = $(html, body).scrollTop()

		<script src="../jquery.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function(){
				//监听页面滚动
				$(window).scroll(function(){
					//获取滑动的距离
					var off = $("html, body").scrollTop();
					if(off > 400){
						$("img").show(1000);
					}
					else{
						$("img").hide(1000);
					}
				})
			})
		</script>

展开和收起动画

slideDown(),slideUp(),slideToggle()

展开,收起,切换

<!DOCTYPE html>
<html>
	<head>
		<style type="text/css">
		* {
			margin: 0px;
			padding: 0px;
		}
		#demo {
			width: 200px;
			height: 200px;
			background-color: #0000FF;
			display: none;
		}
		</style>
		<meta charset="utf-8">
		<title></title>
		<script src="../jquery.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function() {
				//编写jquery代码
				$("button").eq(0).click(function(){
					$("#demo").slideDown(1000);
				})
				$("button").eq(1).click(function(){
					$("#demo").slideUp(1000);
				})
				$("button").eq(2).click(function(){
					$("#demo").slideToggle(1000);
				})
			})
		</script>
	</head>
	<body>
		<button type="button">展开</button>
		<button type="button">收起</button>
		<button type="button">切换</button>
		<div id="demo">
			
		</div>
	</body>
</html>

折叠菜单

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			* {
				margin: 0px;
				padding:0px;
				/* border: 1px solid resd; */
			}
			.demo1 {
				list-style: none;
				width: 300px;
				margin: 100px auto;
				text-indent: 2em;
				/* border: 1px solid black;
				border-top: none; */
				/* border-bottom: none; */
			}
			.demo1 li {
				border: 1px solid black;
				line-height: 30px;
				border-bottom: none;
				/* border-left: none;
				border-right: none; */
		/* 		margin-left: 10px; */
			}
			.demo2 {
				list-style: none;
				display: none;
			}
			.demo2 li {
				border-left: none;
				border-right: none;
				text-indent: 3em;
			}
			.demo1>li:last-child {
				border-bottom: 1px solid black;
				border-bottom-left-radius: 10px;
				border-bottom-right-radius: 10px;
			}
			.demo1>li:first-child {
				border-top-left-radius: 10px;
				border-top-right-radius: 10px;
			}
			.demo2>li:hover {
				background-color: #00FFFF;
			}
			.demo1>li:hover {
				background-color: aquamarine;
			}
		</style>
		<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function(){
				$(".demo1>li").click(function(){
					// $(this).children(".demo2");
					var $demo = $(this).children(".demo2");
					$demo.slideToggle(1000);
				})
			})
		</script>

	</head>
	<body>
		<ul class="demo1">
			<li>一级菜单
				<ul class="demo2">
					<li>二级菜单</li>
					<li>二级菜单</li>
					<li>二级菜单</li>
					<li>二级菜单</li>
				</ul>
			</li>
			<li>一级菜单
				<ul class="demo2">
					<li>二级菜单</li>
					<li>二级菜单</li>
					<li>二级菜单</li>
					<li>二级菜单</li>
				</ul>
			</li>
			
		</ul>
	</body>
</html>

扩充(.stop()方法)

在jquery中,如果想要执行动画,建议先执行stop方法,然后再执行动画

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			* {
				margin: 0px;
				padding: 0px;
			}

			.demo1 {
				width: 300px;
				height: 50px;
				list-style: none;
				margin: 200px auto;
				background-color: #FAEBD7;
			}

			.demo1>li {
				/* border: 1px solid red; */
				width: 100px;
				height: 50px;
				line-height: 50px;
				float: left;
				text-align: center;
			}

			.demo2 {
				list-style: none;
				background-color: #00FFFF;
				display: none;
			}
		</style>
		<script src="jQuery3.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function() {
				$(".demo1>li").mouseenter(function() {
					var $demo1 = $(this).children(".demo2");
					$demo1.stop();
					$demo1.slideDown();

				})
				$(".demo1>li").mouseleave(function() {
					var $demo1 = $(this).children(".demo2");
					$demo1.stop();
					$demo1.slideUp();
				
				});
			});
		</script>
	</head>
	<body>
		<ul class="demo1">
			<li>下拉菜单1
				<ul class="demo2">
					<li>1</li>
					<li>2</li>
					<li>3</li>
				</ul>
			</li>

			<li>下拉菜单2
				<ul class="demo2">
					<li>1</li>
					<li>2</li>
					<li>3</li>
				</ul>
			</li>

			<li>下拉菜单3
				<ul class="demo2">
					<li>1</li>
					<li>2</li>
					<li>3</li>
				</ul>
			</li>

		</ul>
	</body>
</html>

淡入淡出动画

方法

淡入:fadeIn()
淡出:fadeOut()
切换:fadeToggle()
淡入到:fadeTo()可以传三个参数,第一个为动画时间,第二个为淡入程度,的第三个为淡入结束的执行函数

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<style type="text/css">
			* {
				margin: 0px;
				padding: 0px;
			}
			#demo {
				width: 400px;
				height: 400px;
				background-color: red;
				display: none;
			}
		</style>
		<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function(){
				//编写jquery代码
				$("button").eq(0).click(function(){
					$("#demo").fadeIn(1000)
				})
				$("button").eq(1).click(function(){
					$("#demo").fadeOut(1000)
				})
				$("button").eq(2).click(function(){
					$("#demo").fadeToggle(1000)
				})
				$("button").eq(3).click(function(){
					$("#demo").fadeTo(1000, 0.5)
				})
			})
		</script>
	</head>
	<body>
		<button>淡入</button>
		<button>淡出</button>
		<button>切换</button>
		<button>淡入到</button>
		<div id="demo">
			
		</div>
	</body>
</html>

弹窗广告demo

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
		<style type="text/css">
			* {
				margin: 0px;
				padding: 0px;
			}
			#demo {
				/* border: 1px solid #FF0000;
				width: 380px;
				height: 200px; */
				position: fixed;
				right: 0;
				bottom: 0;
				display: none;
			}
			#demo>span {
				display: block;
				width: 30px;
				height: 30px;
				position: absolute;
				right: 0;
				top: 0;
				/* background-color: red; */
			}
		</style>
		<script type="text/javascript">
			$(function(){
				//编写jquery代码
				$("span").click(function(){
					$("#demo").fadeOut(1000);
				})
				$("#demo").stop().slideDown(1000).fadeOut(1000).fadeIn(1000);
			})
		</script>
	</head>
	<body>
		<div id="demo">
			<img src="img/3.png" />
			<span></span>
		</div>
	</body>
</html>

自定义动画

animate({}, 1000, swing, function(){})

可以有四个参数
第一个参数接受一个对象,对象中传递属性
第二个参数传递时长
第三个参数指定动画节奏:linear(快慢交替),swing(匀速)
第四个参数传递一个执行结束以后的函数
注:对象中可以累加,可以传递关键字(比如show,hide,toggle)

stop方法和delay方法

delay()方法可以延迟动画
stop()方法传参有以下几点:

 立即停止当前动画,继续执行后续的动画
$("div").stop();
$("div").stop(false);
$ ("div").stop(false, false) ;
立即停止当前和后续所有的动画
$("div").stop(true);
$("div").stop(true,false);
立即完成当前的,继续执行后续动画
$("div").stop(false,true);
立即完成当前的,并且停止后续所有的
$("div").stop(true, true);

添加节点相关方法

append():添加节点到元素内部最后
prepend():添加节点到元素内部之前
after():添加节点到元素外部之后
before():添加节点到元素外部之前

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function(){
				//编写jquery代码
				var $li = $("<li>我是新增的li</li>");
				$("button").click(function(){
					$("ul").append($li);
					// $("ul").prepend($li);
					// $("ul").after($li);
					// $("ul").before($li);
				});
			})
		</script>
	</head>
	<body>
		<button type="button">新增节点</button>
		<ul>
			<li>第一个li</li>
			<li>第二个li</li>
		</ul>
	</body>
</html>

删除节点相关方法

remove():删除指定元素
empty():删除指定元素的内容,指定元素的标签不会受到影响

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<script src="jquery.js" type="text/javascript" charset="utf-8"></script>
		<script type="text/javascript">
			$(function() {
				//编写jquery代码
				$("button").click(function(){
					// $("li").remove(".demo");
					$("p").empty();
				});
			})
		</script>
	</head>
	<body>
		<button type="button">删除节点</button>
		<ul>
			<li class="demo">我是第2个li</li>
			<li>我是第1个li</li>
			<li class="demo">我是第3个li</li>
			<li>我是第4个li</li>
			<li>我是第5个li</li>

		</ul>
		<div>
			<p>我是一个段落</p>
		</div>
	</body>
</html>

替换节点相关方法

replaceWith()

复制节点相关方法

clone(false):浅复制,复制标签但不复制事件
clone(true):深复制,复制标签同时也复制事件
注:要配合append()方法一起进行调用

注:该篇博客为自己视频学习时记录下的笔记,部分内容来源于学习视频

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

牛仔不当马仔

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值