我正在尝试从网址加载图片以检查互联网连接。没有互联网连接时,它应显示一个dojo警告对话框。这适用于Firefox,但不适用于IE8。
以下是代码段:
var img = new Image();
img.src = userGuideUrl1_img + '?' + (new Date).getTime();
img.onload = function() {
window.open(userGuideUrl1);
}
img.onerror = function() {
dojo.addOnLoad(warningDialogFunc);
}
这里warningDialogFunc是一个dojo对象。有什么想法吗? 感谢
答案 0 :(得分:1)
可能是在执行img.onerror处理程序时已经加载了页面,并且IE不会重新执行dojo.addOnLoad(warningDialogFunc)
的函数吗?
尝试更改
img.onerror = function() {
dojo.addOnLoad(warningDialogFunc);
}
简单地说:
img.onerror = function() {
warningDialogFunc();
}
答案 1 :(得分:0)
您必须在设置图像源之前设置处理程序,当您更改src属性时,IE将尝试下载图像并触发事件。
var img = new Image();
img.onload = function() {
window.open(userGuideUrl1);
}
img.onerror = function() {
dojo.addOnLoad(warningDialogFunc);
}
img.src = userGuideUrl1_img + '?' + (new Date).getTime(); // Trigger image download and the handlers.