[英]Why doesn't the animation speed parameter take my variable jQuery
我需要變量 'gv' 來獲得按鈕的值,我用 this.value 做到了這一點,它作為警報給出了正確的值。 但是一旦我將該變量賦予動畫的速度參數,它就不起作用了。
我嘗試在動畫中直接給出變量,但這也不起作用。 我還嘗試給動畫隨機值,看看它是否受到影響,確實如此。 但變量根本不做任何事情。
$(document).ready(function() { $("button").click(function() { var GV = this.value; $("#ball").animate({ bottom: "0px" }, GV); }) });
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div id="ball"></div> <button value="18999" class="btn">butt on</button>
我希望動畫以 18999 毫秒的速度將 div 拉到底部,但它以 800 毫秒的速度拉到底部
您忘記將 GV 值解析為整數( this.value
是一個字符串):
$(document).ready(function() {
$("button").click(function() {
let GV = $(this).val();
console.log(GV);
$("#ball").animate({
bottom: "0px"
}, parseInt(GV));
})
});
要嘗試的代碼:
$(document).ready(function() { $("button").click(function() { var GV = this.value; console.log(GV); $("#ball").animate({ bottom: "0px" }, parseInt(GV)); }) });
#ball { background-color: red; width: 10px; height: 10px; position: absolute; }
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <div id="ball"></div> <button value="18999" class="btn">button</button>
this.value
是一個字符串。 根據JQuery Docs , animate()
方法參數允許的字符串是“fast”或“slow”。 任何其他字符串都將被忽略並使用默認速度。 使用parseInt($(this).val())
獲取按鈕元素的整數值:
var GV = parseInt($(this).val());
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.