gpt4 book ai didi

javascript - 如何作为加载器无限重复动画?

转载 作者:行者123 更新时间:2023-11-29 21:37:37 25 4
gpt4 key购买 nike

我有一些代码可以无限地为线条设置动画。我的 html 有点像这样。

<body>
<div class="line_1"></div>
<div class="line_2"></div>
<div class="line_3"></div>
</body>

我已经像这样应用了 css..

body {
padding:50px;
}

.line_1 {
position:relative;

width:50px;
height:5px;
opacity:0.3;
background-color:#ef4646;
transform:rotate(-45deg);
transform-origin:left;
top: -10px;
left: 10px;
}

.line_2 {
position:relative;
width:50px;
height:5px;
opacity:0.3;
background-color:#86b4fc;
transform:rotate(45deg);
transform-origin:left;
top: 10px;
left: 10px;
}

.line_3 {
position:relative;
top:60px;
left: -40px;
width:50px;
height:5px;
opacity:0.3;
background-color:#f7e551;
transform:rotate(-45deg);
transform-origin:right;
}

我的脚本有点像这样。

<script type="text/javascript">
$(document).ready(function () {
$('.line_1').animate({ opacity:"1",left:"0px",top:"0px" });
setInterval(function () { $('.line_2').animate({ opacity: "1", left: "0px", top: "0px" }); },400);
setInterval(function () { $('.line_3').animate({ opacity: "1", left: "-10px", top: "30px" }); }, 600);

});
</script>

此动画仅在页面加载时应用一次。但我希望它不断重复。请帮助我做到这一点。

最佳答案

您可以轻松地将其包装成一个函数,然后使用 jQuery animate 的回调再次调用该函数。您还需要删除所有应用的样式,我将通过从元素中删除 style 属性来完成。我还使用 jQuery 的 delay 来延迟动画的执行。

我还清理了您的 CSS,将共享元素放在共享规则中,这使您的 CSS 更易于管理。

function Animation(){
$('.line_1').removeAttr("style").animate({
opacity:"1",
left:"0px",
top:"0px"
});
$('.line_2').removeAttr("style").delay(400).animate({
opacity: "1",
left: "0px",
top: "0px"
});
$('.line_3').removeAttr("style").delay(600).animate({
opacity: "1",
left: "-10px",
top: "30px"
}, Animation);
}
$(document).ready(Animation);
body {
padding:50px;
}

.line_1, .line_2, .line_3 {
position: relative;
width: 50px;
height: 5px;
opacity: 0.3;
transform-origin:left;
}

.line_1 {
background-color: #ef4646;
transform: rotate(-45deg);
top: -10px;
left: 10px;
}

.line_2 {
background-color: #86b4fc;
transform: rotate(45deg);
top: 10px;
left: 10px;
}

.line_3 {
top: 60px;
left: -40px;
background-color: #f7e551;
transform: rotate(-45deg);
transform-origin: right;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<body>
<div class="line_1"></div>
<div class="line_2"></div>
<div class="line_3"></div>
</body>

关于javascript - 如何作为加载器无限重复动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34416732/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com