为什么animation speed参数不使用我的变量jQuery

时间:2019-07-01 12:05:56

标签: javascript jquery jquery-animate

我需要变量'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毫秒的速度拉动

2 个答案:

答案 0 :(得分:1)

您忘记将GV值解析为整数(CREATE TRIGGER dbo.StateChange ON dbo.AlarmInstall AFTER INSERT, UPDATE AS SET NOCOUNT ON BEGIN IF UPDATE(uninstallDate) BEGIN DECLARE @houseId int DECLARE @uninstallDate date SELECT @houseId = HouseId, @uninstallDate = uninstallDate FROM inserted UPDATE dbo.House SET IsInstalled = CASE WHEN @uninstallDate IS NULL THEN 0 ELSE 1 END WHERE HouseId = @houseId END END 是字符串):

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;
}

答案 1 :(得分:0)

animate()是一个字符串。根据{{​​3}},parseInt($(this).val())方法参数允许的字符串是'fast'或'slow'。任何其他字符串都将被忽略,并且将使用默认速度。使用var GV = parseInt($(this).val()); 来获取按钮元素的整数值:

pipe(..){
 timeout(..){
  BuildEmailExt email = new BuilEmailExt(this, Emails.allTeams())
  someCode..
  }
}