img标签设置加载时间

<img src="http://i1.sinaimg.cn/home/dec... onload="alert('能上')" onerror="alert('不能上');" />
如上代码,一张图片请求需要联网请求,如果用户可以上网择加载成功!网络不能上网加载失败。
可是如果用户的网络连了网但是不能上网,img则会一直加载,持续一分钟左右的时间,这个时间段如何设置呢??比如说5s?有大牛想想办法吗?

阅读 12.1k
4 个回答

问题的核心是:如何获取是否联网。而用户能联网不能上网应该也是相当于断网的状态。
1.如果不需要考虑老旧的浏览器,就用H5的window.navigator.onLine去检测,就能知道。
2.考虑老旧的浏览器。那就setTimeOut一个事件。然后这个setTimeOut在img的onload事件里面去删除就好了。

如果是这样,那就ajax来加载这张图片,Ajax有超时设置,如果超时你想做什么事情就继续往下写就行了

一般的做法是用setTimeout设置一个超时,比如5-10s,超过这个时间,就提示加载失败

不太明白你要的效果。能不能写个延迟定时器 ?

<img src="image.gif"  id="img"  />
<script>
 var oImg = document.getElementById("img");
 oImg.onerror = function () {
    setTimeout(function () {
        alert("连接超时")
    },5000)
 }
</script>
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题