Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在jquery动画中设置最大边距顶部?_Javascript_Jquery - Fatal编程技术网

Javascript 如何在jquery动画中设置最大边距顶部?

Javascript 如何在jquery动画中设置最大边距顶部?,javascript,jquery,Javascript,Jquery,我在jQuery中有以下代码,用于设置div marginTop的动画 我如何设置它,以便在边距顶部等于900px时,禁用单击事件 $("#tmbUp").click(function(){ $("#tmbHolder").animate({"marginTop": "-=100px"}, "slow"); }); $("#tmbDown").click(function(){ $("#tmbHolder").animate({"marginTop": "+=100px"}, "slow")

我在jQuery中有以下代码,用于设置div marginTop的动画

我如何设置它,以便在边距顶部等于900px时,禁用单击事件

$("#tmbUp").click(function(){ 
$("#tmbHolder").animate({"marginTop": "-=100px"}, "slow");
});

$("#tmbDown").click(function(){
$("#tmbHolder").animate({"marginTop": "+=100px"}, "slow");
});
在调用animate函数之前,只需检查上边距的当前值。如果为900或更少,则不要设置动画。

在调用动画功能之前,只需检查上边距的当前值即可。如果是900或更少,不要设置动画。

动画方法可以选择使用回调函数

您要做的是这样的:

$("#tmbDown").click (function (){ 
  $("#tmbHolder").animate (
    {"marginTop": "+=100px"}, 
    "slow",
    "swing",
    // The callback function
    function () {
      if ($(this).css ('marginTop') >= "900px") {
        $("#tmbDown").unbind ('click');
      }
    }
  );
});
animate方法可以选择使用回调函数

您要做的是这样的:

$("#tmbDown").click (function (){ 
  $("#tmbHolder").animate (
    {"marginTop": "+=100px"}, 
    "slow",
    "swing",
    // The callback function
    function () {
      if ($(this).css ('marginTop') >= "900px") {
        $("#tmbDown").unbind ('click');
      }
    }
  );
});

我假设您只想在marginTop大于等于900时禁用click事件,并在用户减少marginTop时再次启用它。我建议利用内置在animate函数中的回调函数

$("#tmbUp").click(function(){ 
    $("#tmbHolder").animate({"marginTop": "-=100px"}, "slow", 
        function() {
            // if tmbHolder's marginTop < 900px, enable #tmbDown
        }
    );
});

$("#tmbDown").click(function(){
    $("#tmbHolder").animate({"marginTop": "+=100px"}, "slow", 
        function() {
            // if tmbHolder's marginTop >= 900px, disable #tmbDown
        }
    );
});

希望这能帮到你

我假设您只想在marginTop大于等于900时禁用click事件,并在用户减少marginTop时再次启用它。我建议利用内置在animate函数中的回调函数

$("#tmbUp").click(function(){ 
    $("#tmbHolder").animate({"marginTop": "-=100px"}, "slow", 
        function() {
            // if tmbHolder's marginTop < 900px, enable #tmbDown
        }
    );
});

$("#tmbDown").click(function(){
    $("#tmbHolder").animate({"marginTop": "+=100px"}, "slow", 
        function() {
            // if tmbHolder's marginTop >= 900px, disable #tmbDown
        }
    );
});
希望这能帮到你

检查绑定/取消绑定jquery方法检查绑定/取消绑定jquery方法