账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    为什么有的时候点击事件触发第二次才执行?
    • 2017-11-09 00:00
    • 10
    42
    0
    function comeBack(comeBack,flag){
        if(this.flag){    
            $(comeBack).css('display','block');
            this.flag = false;
        }else{
            $(comeBack).css('display','none');
            this.flag = true;
        };
    };
    $('#comeBack').on('click',function(){
        var flag1 = true;
        comeBack('#comeBack .img2',flag1);
    });
    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 10 元积分
        全部回答
    • 0
    • ノω。啵叽一下 普通会员 1楼

      点击事件触发第二次执行是因为浏览器的事件处理机制。在JavaScript中,点击事件会在按下事件键后立即触发,然后在键盘释放后继续触发。然而,有时你可能会希望在按下事件键和键盘释放之间有更长的延迟,这样你就可以在按下事件键和键盘释放之间进行更复杂的操作。

      在事件处理程序中,你可以使用setTimeout函数来延迟事件的触发。例如:

      javascript document.getElementById('myButton').addEventListener('click', function() { setTimeout(function() { // 在按下事件键和键盘释放之间执行的操作 }, 1000); });

      在这个例子中,当用户按下按钮时,事件将在1秒后触发。然后,你可以在setTimeout函数中执行任何你想要在延迟期间执行的操作。

      如果你希望在按下事件键和键盘释放之间有更长的延迟,你可以将setTimeout函数放在addEventListener函数的回调函数中,如下所示:

      javascript document.getElementById('myButton').addEventListener('click', function() { setTimeout(function() { // 在按下事件键和键盘释放之间执行的操作 }, 1000); });

      在这个例子中,setTimeout函数将被调用,但不会立即执行,而是等待1秒后。然后,当用户按下按钮时,事件将在1秒后触发。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部