将一个javascript文件导入到try catch块中的html文件中

Alo*_*n_T 6 html javascript try-catch

我有一个html页面,我导入js文件如下

<script src="file.js" type="text/javascript" charset="utf-8"></script>
Run Code Online (Sandbox Code Playgroud)

但是如果这个文件无法运行它的脚本,整个页面显然会卡住

我可以将该文件导入try catch块吗?

谢谢

Pau*_* S. 5

您可以侦听错误(请参阅

// make a script
var s = document.createElement('script');
// set it up
s.setAttribute('src',"file.js");
s.setAttribute('type',"text/javascript");
s.setAttribute('charset',"utf-8");
s.addEventListener('error', errorfunction, false);
// add to DOM
document.head.appendChild(s);
Run Code Online (Sandbox Code Playgroud)

然后在errorfunction,找出发生了什么并尝试像在catch


Chr*_*ris -1

您可以使用AJAX。这假设您有jQuery,但您可以轻松避免使用它(在这里您可以找到许多教程之一)。这是一个例子:

$.get("http://yoursite.com/file.js", function(data) {
    try {
       eval(data); //Run the JavaScript, which is equivalent to adding it
    }
    catch (err) {
       //handle errors
    }
});
Run Code Online (Sandbox Code Playgroud)

希望以任何方式有所帮助!