如何解决如何重复淡入淡出和设置动画?
我运行了这段代码,并且可以运行,但是当$(“。Box3”)。click,$(“。Box1”)不会淡入和设置动画时,它将直接显示在窗口中。其次$(“。Box2”)和$(“。Box3”)在第二次出现问题。
是不是淡入淡出和动画只运行一次?我希望运行更多次,但仍然具有fadeIn,fadeOut和动画效果。
感谢您的回答。
$(function() {
$(".Box2,.Box3").hide();
$(".Box1").click(function() {
$(".Box1").animate({
left: "1200px"
},1000).fadeOut();
$(".Box2").fadeIn();
});
$(".Box2").click(function() {
$(".Box2").animate({
left: "1200px"
},1000).fadeOut();
$(".Box3").fadeIn();
});
$(".Box3").click(function() {
$(".Box3").animate({
left: "1200px"
},1000).fadeOut();
$(".Box1").fadeIn();
});
})
body {
position: relative;
}
.Box1 {
width: 300px;
height: 300px;
background-color: rgb(255,0);
position: absolute;
top: 300px;
left: 500px;
}
.Box2 {
width: 300px;
height: 300px;
background-color: rgb(2,149,246);
position: absolute;
top: 300px;
left: 500px;
}
.Box3 {
width: 300px;
height: 300px;
background-color: rgb(22,187,0);
position: absolute;
top: 300px;
left: 500px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="Box1"></div>
<div class="Box2"></div>
<div class="Box3"></div>
解决方法
说明::由于所有元素都具有类似的事件绑定,因此我制作了/l*vx
函数,从而减少了代码。 v
函数接受回调函数作为参数,并在执行x
时执行该函数。单击commonEvent
时,其fadeOut
属性设置为fadeOut
。因此,我在回调函数中将其值改回了.box1
,即初始值。
left
1200px
500px
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。