【问题标题】:Returning false from custom events produces error in new jquery version从自定义事件返回 false 会在新的 jquery 版本中产生错误
【发布时间】:2016-08-15 11:08:24
【问题描述】:

每当从自定义事件处理程序返回 false 时,我都会在新的 jquery 版本中收到错误 “e.preventDefault 不是函数”

示例: 我在 Jquery 中创建的 Dialog Widget 具有“beforeopen”自定义事件。用户可以通过从事件处理程序返回 false 来阻止打开对话框。

* Binding the custom event *
$("dialogElement").on("beforeopen",function(){
      return false;
});

* Triggering *

 var returnValue = $("dialogElement").trigger($.Event("beforeopen"));
 if(returnValue){

    ... open the dialog ....

 }    

这对我以前有用。但是新的 jquery 版本(2.2.4 以后)会产生上述错误。请指导我。

【问题讨论】:

    标签: javascript jquery jquery-ui jquery-plugins


    【解决方案1】:

    返回假;还可以防止其他 javascript 函数的进展。由于缺少特定事件,命令无法理解该事件需要停止。也许通过使用下面的代码更具体可以帮助你;

    $("dialogElement").on("beforeopen",function(event){
          event.preventDefault();
          event.stopPropagation();
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-14
      • 2012-06-26
      • 2021-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多