发生错误时如何继续执行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;
}

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

上一篇:Halt- Linux必学的60个命令


下一篇:linux复习3:linux字符界面的操作