远程脚本失败处理-JavaScript
在我的代码中,我正在从远程服务器加载脚本。以下是我所做的:远程脚本失败处理-JavaScript,javascript,src,Javascript,Src,在我的代码中,我正在从远程服务器加载脚本。以下是我所做的: var loadFlag = false; var myWidgetScript = document.createElement("script"); myWidgetScript.type = "text/javascript"; myWidgetScript.charset = "utf-8"; myWidgetScript.src = document.location.protocol+ "//mytest.com/load
var loadFlag = false;
var myWidgetScript = document.createElement("script");
myWidgetScript.type = "text/javascript";
myWidgetScript.charset = "utf-8";
myWidgetScript.src = document.location.protocol+ "//mytest.com/loader";
document.getElementsByTagName("head")[0].appendChild(myWidgetScript);
myWidgetScript.onreadystatechange=myWidgetScript.onload = myWidgetScript.onload = function() {
loadFlag = true;
if (!this.readyState || this.readyState == "loaded" || this.readyState == "complete") {
//Do what you want
}
};
if(!loadFlag){
alert("Not loaded");
}
现在,如果无法从URL加载脚本标记,我想生成一个警报。如果URL有输入错误,或者服务器mytest.com关闭,我很抱歉。但在我的代码中,即使URL正确且服务器已启动,它也会生成警报。。。
我的代码怎么了?。。。
我可以用其他方法来完成这个任务吗?试试这个。。。也许会有帮助
var headTag = document.getElementsByTagName("head")[0];
var jqTag = document.createElement('script');
jqTag.type = 'text/javascript';
jqTag.src = 'YOUR SCRIPT';
headTag.appendChild(jqTag);
if (jqTag)
{
if (jqTag.readyState)
{
// For old versions of IE
jqTag.onreadystatechange = function()
{
if (this.readyState == 'complete' || this.readyState == 'loaded') {
alert('loaded');
}
};
}
else
{
// Other browsers
jqTag.onload = function() {
alert('loaded');
};
}
}
你会使用外部JS的任何变量吗?不会,但是外部JS会使用我的变量。这些变量将位于
//执行您想要的操作
区域…要解决的问题不是脚本是否加载。要解决的问题是URL是否可访问。。!这个怎么样?