簡體   English   中英

為什么動畫速度參數不采用我的變量 jQuery

[英]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 Docsanimate()方法參數允許的字符串是“fast”或“slow”。 任何其他字符串都將被忽略並使用默認速度。 使用parseInt($(this).val())獲取按鈕元素的整數值:

var GV = parseInt($(this).val());

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM