有没有办法检查链接、img、脚本是否加载失败?
Is there any method to check if the link, img, script failed to load?
这是我尝试过的。我相信onerror对链接和脚本不起作用。我不太确定。
基本上,我想达到的是。当浏览器无法加载某些资源时,我将重新加载网页。不幸的是,我的第一步(脚本)不起作用。
var link = document.getElementsByTagName('link'),
img = document.getElementsByTagName('img'),
js = document.getElementsByTagName('script');
function chk_error(e){
for(var i = 0; i < e.length; i++){
e[i].onerror = function(){
alert('Failed.'); // doesn't alert even there's error
}
}
}
chk_error(link);
chk_error(img);
chk_error(js);
和
[].forEach.call(document.querySelectorAll('link, img, script'), function(e){
e.onerror = function(){
alert('reload'); // doesn't alert. not working.
}
});
注: I don't use jQuery library with this project.
另一个选择是访问控制台的错误长度,但我不知道如何得到它。我认为这是不可能的。
这个项目是专注于谷歌浏览器的某些原因。
也许有人有更好的主意或给我一些建议。任何帮助都会很感激。谢谢。
通过将inline onerror= "location.reload()"放置到所需的img, link, script中来解决。我认为它也很有用。所以,如果有人需要相同的功能。我是这样做的。
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons" onerror="location.reload()">
<img src="images/logo.png" onerror="location.reload();">
<script src="js/tweenmax.js" onerror="location.reload()"></script>
很丑,但对我有用。如果有人有更好的主意。请回答。谢谢。
编辑2:[].forEach.call(document.querySelectorAll('link, img, script'), function(e){
e.setAttribute('onerror', 'location.reload()');
});
比第一个好得多。这只会在脚本位于链接之前的头部顶部时起作用。
您应该在onerror
调用之前定义错误触发函数!在这里,我的电脑已经报警两次,因为js/tweenmax.js
和djffjds.jpg
不存在。
<script type="text/javascript">
//this function must be in header tag
function hasError(argument) {
alert(argument == 'error');
}
</script>
<script src="js/tweenmax.js" onerror="hasError('error')"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/icon?family=Material+Icons" onerror="hasError('error')">
<img src="djffjds.jpg" onerror="hasError('error')">
相关文章:
- 如何检测是否加载了iframe
- 如何知道是否加载了JavaScript(脚本)
- 如何在jsoup的帮助下跟踪我的网站是否加载到android设备上
- 如何检查iframe是否加载在JavaScript中
- jQuery或Javascript检查是否加载了图像
- 如何检查<对象>是否加载失败
- 如何确定聚合物元素是否加载
- 如何检测动态加载时加载的jquery是否加载
- 检查 WebGL 纹理是否加载到片段着色器中
- 如何检查是否加载了所有图像?(请不要使用jQuery)
- 如何检查外部javascript是否加载失败
- 有没有办法检查html是否加载在Iframe上
- jQuery:如何检测是否加载了LI元素
- 如何检查我所有的 html 内容是否加载在 angularjs 中
- 如何查看页面上是否加载了jQuery文件
- 检查iframe是否加载在$(document).ready中
- 如何检查元素是否加载
- 我如何检查iframe内容是否加载和可见
- 如何检测网站是否加载在移动设备上的iframe中
- 是否有一种方法来确定是否加载了所有本地JavaScript资源