【问题标题】:Why does minified jQuery 3.4.1 have duplicate event handlers为什么缩小的 jQuery 3.4.1 有重复的事件处理程序
【发布时间】:2019-07-01 05:53:29
【问题描述】:

我最近将一个站点从 jQuery 2.2.0 更新到 3.4.1。在更新之前和之后,我都使用了缩小版的 jQuery。出于某种原因,3.4.1 的缩小版添加了每个事件处理程序的第二个副本。它还包括一个 DOM2 和 Bubbling 标签,并且始终具有相同的代码。如果我使用 3.4.1 的开发人员副本(因此,未缩小)运行,这些额外的事件处理程序不存在。我正在 Mozilla Firefox 中对此进行测试。 ** 当我在谷歌浏览器中测试时,我注意到没有重复。

我已经确认当我将任何事件处理程序添加到一个新元素(我通过控制台手动附加)时会发生这种情况。是否存在某种配置问题?

“重复”处理程序中的代码。

function(e) {
  return "undefined" != typeof k && k.event.triggered !== e.type ? k.event.dispatch.apply(t, arguments) : void 0
} 

【问题讨论】:

    标签: javascript jquery


    【解决方案1】:

    这发生在我身上,当我尝试使用 alert 打印出我的函数结果时:

    function weapon_form_control(){
        $('#dps-meter-weapon').find('input').bind('input',function(){
            var k=$('#dps-meter-weapon').find('.weapon-name').val;
    
            alert(k);   
        });
    }   
    

    在本例中,我忘记在.val 之后添加(),该函数试图打印element.val jQuery 函数的完整代码,而不是其工作结果为:<input> 值。

    【讨论】:

      猜你喜欢
      • 2013-07-04
      • 2018-04-30
      • 1970-01-01
      • 1970-01-01
      • 2015-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-20
      相关资源
      最近更新 更多