微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

发生错误时如何继续执行JavaScript

我将WP本机函数wp_enqueue_script()用于WP前端和后端中的所有脚本加载,因此它可以处理对同一脚本的重复调用,依此类推.

问题之一是其他程序员不使用此功能而是直接从代码中加载脚本,这导致jQuery或jQuery-UI被加载两次,从而导致许多错误.

一个问题是我不拥有的代码会触发错误,并在此之后停止JavaScript的执行.

简而言之:

我不拥有的代码中发生Javascript错误.
由于该错误,我的代码无法执行.
我希望我的代码绕过该错误并仍然执行.
有没有办法解决这些问题?

解决方法:

function ShieldAgainThirdPartyErrors($) {
    // Code you want protect here...
}

// First shot.
// If no error happened, when DOMContentLoaded is triggered, this code is executed.
jQuery(ShieldAgainThirdPartyErrors);

// Backup shot.
// If third party script throw or provoke an unhandled exception, the above function 
// call Could never be executed, so, lets catch the exception and execute the code.
window.onerror = function () {

    ShieldAgainThirdPartyErrors(jQuery);

    return true;
}

如果您想在必要时两次拉动枪机扳机;)设置一个标志来表示第一枪成功并且避免了备用枪,我认为在某些情况下,即使第三方代码进入,您的第一枪也可以执行.麻烦并触发第二枪.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐