jQuery几次点击元素重载内容

时间:2017-04-17 21:17:58

标签: javascript jquery html

我在模态中创建了一个登录和注册表单。您只需点击heading(h2)switcher(span),即可切换这两种表单。  到目前为止,每件事情都很完美,但是当我在切换台(“标题或跨度”)上点击8或10次时,两种形式都会出现!这是代码

 $('#modal-switcher, #modalheading').on('click', function(){


    // reset form on switch
    $('.modal-content form').trigger('reset');

         var h2   = $('#modalheading'),
         signup   = $('#modalsignupform'),
         login    = $('#modalloginform'),
         switcher = $('#modal-switcher');

    if(h2.hasClass('signup')){

        h2.addClass('login').removeClass('signup').html('Login OR <a id="modal-switcher1">Signup</a>');
        signup.hide();
        login.fadeIn('slow');
        switcher.text('Go to signup');

    }else{
        h2.addClass('signup').removeClass('login').html('Signup OR <a id="modal-switcher1">Login</a>');
        login.hide();
        signup.fadeIn('slow');
        switcher.text('Go to login');
    }


});

任何解释为什么几次点击导致此问题? 什么是一个很好的解决方案 谢谢 !!

1 个答案:

答案 0 :(得分:2)

我认为你的问题是var user = User() // Set user.send('email') = "user_name@domain.com" // Get print(user.send('email')) 。如果快速切换,则动画在第二个事件开始之前没有时间结束。你会有人工制品。我建议您在活动无法完成时阻止元素。例如,您可以尝试这样的事情:

.fadeIn('slow')

您可以在(我的自定义)锁定类中使用一些预加载器图标。