Jquery Click事件工作两次

时间:2015-01-12 14:17:45

标签: javascript jquery html

我的jquery代码是:

 $(document).on('click', '#showall', function (event) {
            $('#divcontent').animate({  'marginTop' : "-=25%"   });
            }); 

此代码的目的是显示隐藏的内容。这段代码第一次完美运行。在我的应用程序中我使用ajax。因此,在每次ajax调用后,“margin-top:”正在增加。例如,在一次ajax调用 margin-top:52%之后,第二次 margin-top:76%。为什么数字增加每个ajax调用。我应该做的每次margintop:25%

2 个答案:

答案 0 :(得分:2)

这个数字正在增加,因为你每次都在递减它。 ({ 'marginTop' : "-=25%" });

该代码应改为:({ 'marginTop' : "-25%" });

答案 1 :(得分:1)

您可以使用某个变量来检查按钮之前是否被按下,例如:

    $(document).on('click', '#showall', function (event) {
        if ( !lockt ){
            $('#divcontent').animate({  'marginTop' : "-=25%"   });
            lockt = true;
        }
    });