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

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

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    如下jquery代码,为什么off之后,立马.on?
    32
    0
    function businessEvent(){
          var that = this;
        $(".business .business_item").each(function() {
            $(this).hover(function() {
                $(this).addClass("active");
            }, function() {
                $(this).removeClass("active");
    
            })
        }).off().on("click", function() {
            var businessType = $(this).attr("data-index");
            var name = $(this).attr("data-name");
            $(".business").attr("style","display:none");
            $(".business_navigation").attr("style","display:block");
            $.ajax({
                type : "post",
                url : "../hf/client/setBusinessType",
                dataType : "json",
                timeout:60000,
                async : false,
                data : {
                    businessType:businessType,
                    customerSessionId:sessionStorage.customerSessionId
                },
                success : function(resp) {
                    
                }
            });
        });
      }
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 笑傲苍生 普通会员 1楼

      在jQuery中,.off().on()是两个不同的方法,它们分别用于清除事件和添加事件监听器。

      .off()方法用于删除事件处理程序。当你调用.off()方法时,你需要提供一个参数,这个参数是一个可以迭代的事件处理器对象,然后使用.clear()方法来清除所有对这个事件处理器的引用。

      .on()方法用于添加事件监听器。当你调用.on()方法时,你需要提供一个参数,这个参数是一个事件处理器对象,然后使用.add()方法来添加对这个事件处理器的引用。

      下面是一个例子,演示了为什么.off()之后,立马.on:

      ```javascript // 选择所有的事件处理器 var eventProcessors = document.querySelectorAll('.my-class');

      // 为每个事件处理器添加事件监听器 eventProcessors.forEach(function(eventProcessor) { eventProcessor.addEventListener('click', function() { console.log('Event listener triggered'); }); });

      // 从事件处理器中移除事件监听器 eventProcessors.forEach(function(eventProcessor) { eventProcessor.removeEventListener('click', function() { console.log('Event listener unregistered'); }); }); ```

      在这个例子中,我们首先选择了所有的事件处理器,然后为每个事件处理器添加了一个点击事件监听器。然后,我们从这些事件处理器中移除了事件监听器。由于我们在.on()方法中为每个事件处理器添加了一个事件监听器,所以在.off()方法后,我们立即在事件处理器中添加了一个事件监听器,所以立即触发了点击事件。

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