jQuery的自定义动画animate的语法,模仿王者手风琴效果

jQuery的自定义动画animate的语法

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

1、 params (必需)参数定义形成动画的 CSS 属性,以对象形式书写。

2、 speed (可选)参数规定效果的时长。它可以取以下值:“slow”、“fast” 或毫秒。

3、callback(可选) 参数是动画完成后所执行的函数名称。

animate的简单用法:(点击按钮后让div在一秒内移动到距离左边300px右边300px的地方,宽高变为300px)

$(function() {
	$("button").click(function() {
		$("div").animate({
			width:300,
			height:300,
			left:300,
			top:300,
		},1000)
	})
})

模仿王者手风琴效果

CSS代码:

* {
	margin: 0;
	padding: 0;
}
.king {
	width: 80%;
	height: 90px;
	margin: auto;
	background-color: #0d3354;
}
.king ul li {
	position: relative;
	float: left;
	margin-right: 10px;
	width: 90px;
	height: 90px;
	list-style: none;
}

.small {
	position: absolute;
	left: 0;
	right: 0;
	width: 90px;
	height: 90px;
}
.big {
	position: relative;
	height: 90px;
	display: none;
}
.king .current {
	width: 196px;
}
.current .small {
	display: none;
}
.current .big {
	display: block;
}

HTML代码:

<div class="king">
	<ul>
		<li class="current">
			<a href="#">
				<img src="img/1.png" class="big">
				<img src="img/1-small.png" class="small">
			</a>
		</li>
		<li>
			<a href="#">
				<img src="img/2.jpg" class="big">
				<img src="img/2-small.png" class="small">
			</a>
		</li>
		<li>
			<a href="#">
				<img src="img/3.jpg" class="big">
				<img src="img/3-small.png" class="small">
			</a>
		</li>
	</ul>
</div>

JS代码:

<script src="../../../jquery-3.5.1.min.js" type="text/javascript" charset="utf-8"></script>
	<script type="text/javascript">
		$(function() {
			$(".king li").mouseenter(function() {
			// 鼠标放在某一个li上时自己的宽度变成196px,大图片淡入,小图片淡出
				$(this).stop().animate({
					width:196
		        }).find(".big").stop().fadeIn().siblings(".small").stop().fadeOut();
					// 其他兄弟节点宽度变为90px,大图片淡出,小图片淡入
				$(this).siblings("li").stop().animate({
					width:90
				}).find(".big").stop().fadeOut().siblings(".small").stop().fadeIn();
			})
		})

效果如下:
在这里插入图片描述
鼠标悬浮在li上时小图片淡出,大图片淡入

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值