gpt4 book ai didi

javascript - jQuery .animate() - 不工作

转载 作者:行者123 更新时间:2023-11-29 18:06:58 24 4
gpt4 key购买 nike

任何人都可以告诉我我使用 .animate() 函数有什么问题吗?

这是我的代码:

var hei = $("#myDiv").css("height");
hei += 5;
hei *= -1;
var ght = "px"
var height = hei + ght

function slidedown1() {
$("#myDiv").css("top", height);
$("#myDiv").css("display", "block");
$("#myDiv").animate({
top: '0px'
}, 1000);
setTimeout(
function() {
$("#myDiv").animate({
top: height
}, 1000);
$("#myDiv").css("display", "none");
}, 15000)
}
<head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script></head>

<body onload="slidedown1()">
<div id="myDiv" style="background-color:#000000;color:#ffffff;border-radius:2px;position:absolute;width:100px;height:100px">
Lorem ipsum and so on
</div>
</body>

它应该做的是设置一个变量来获取 div 的高度,加 5,乘以 -1,然后在末尾添加“px”。然后它应该将该 div 设置为从页面顶部向上移动该数字,使其成为 css display:block; 而不是 display:none;,并为其设置动画到它应该在的地方。然后在 15 秒后,它应该向上返回 div 并将 display 设置回 none

出于某种原因,.animate() 无法正常工作,但其他一切正常。

最佳答案

这会将 hei 设置为 100px:

var hei = $("#myDiv").css("height")

这会将其更改为 100px5:

hei + = 5;

这会尝试将 100px5 乘以 -1,返回 NaN:

hei * = -1;

要解决此问题,请使用 parseInt() 第一行:

var hei = parseInt($("#myDiv").css("height"), 10);

请注意,您不需要向其中添加 px - px 是 jQuery css() 的默认单位>animate() 函数。

片段

var hei = parseInt($("#myDiv").css("height"), 10);
hei += 5;
hei *= -1;
var ght = "px"
var height = hei + ght

function slidedown1() {
$("#myDiv").css("top", height);
$("#myDiv").css("display", "block");
$("#myDiv").animate({
top: '0'
}, 1000);
setTimeout(
function() {
$("#myDiv").animate({
top: height
}, 1000);
$("#myDiv").css("display", "none");
}, 15000)
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script></head>

<body onload="slidedown1()">
<div id="myDiv" style="background-color:#000000;color:#ffffff;border-radius:2px;position:absolute;width:100px;height:100px">
Lorem ipsum and so on
</div>
</body>

关于javascript - jQuery .animate() - 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30491423/

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