使用JavaScript为一张图片设置备选路径的方法


Posted in Javascript onJanuary 04, 2017

在做网页开发的时候,有时候希望给图片设置一个备选路径,即,当src属性对应的主路径加载失败的时候,图片可以马上切换到备选路径。这样,即使主路径失效了,显示备用路径也不会影响网页的正常体验。

注意到网页中一张图片加载失败会触发error事件,因此可以使用DOM模型中的load和error事件实现这一效果。

src1='main/image.jpg' //主路径
src2='another/image.jpg' //备用路径

jQuery 1.8以前

使用load和error方法捕捉事件

$('#imgMap' ).attr("src",src1).load(function(){console.log("图片加载成功")
        }).error(function(){
          console.log("图片加载失败,切换路径")
          $('#imgMap').attr('src',src2)    
        });

jQuery 1.8

由于jQuery1.8之后load()方法和error()方法已经废弃了,因此可以使用bind方法绑定事件

$('#img').attr("src",src1).bind( "load", function() {
 console.log("图片加载成功")
}).bind("error",function(){
  console.log("图片加载失败,切换路径")
      $('#img').attr('src',src2)  
});

jQuery 3.0

jQuery3.0以后,统一使用on方法捕获事件

$('#img').attr("src",src1).on( "load", function() {
 console.log("图片加载成功")
}).on("error",function(){
  console.log("图片加载失败,切换路径")
      $('#img').attr('src',src2)  
});

JavaScript

不想使用jQuery插件时,也可以调用JavaScript原生方法。使用addEventListener方法监听事件。

var Image = document.getElementById('img');
Image.src=src1;
Image.addEventListener('load', function(event) {
       console.log("图片加载成功")
});
Image.addEventListener('error', function(event) {
      console.log("图片加载失败,切换路径")
       Image.src=src2;
});

以上所述是小编给大家介绍的使用JavaScript为一张图片设置备选路径的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
JS图片切换的具体方法(带缩略图版)
Nov 12 Javascript
AngularJS包括详解及示例代码
Aug 17 Javascript
基于KO+BootStrap+MVC实现的分页控件代码分享
Nov 07 Javascript
如何给ss bash 写一个 WEB 端查看流量的页面
Mar 23 Javascript
Vue非父子组件通信详解
Jun 12 Javascript
Vue.js中extend选项和delimiters选项的比较
Jul 17 Javascript
cocos creator Touch事件应用(触控选择多个子节点的实例)
Sep 10 Javascript
thinkjs 文件上传功能实例代码
Nov 08 Javascript
jQuery实现的淡入淡出与滑入滑出效果示例
Apr 18 jQuery
node实现登录图片验证码的示例代码
Apr 20 Javascript
对Layer弹窗使用及返回数据接收的实例详解
Sep 26 Javascript
JS数组方法some、every和find的使用详情
Oct 05 Javascript
微信小程序 Canvas增强组件实例详解及源码分享
Jan 04 #Javascript
AngularJS入门示例之Hello World详解
Jan 04 #Javascript
详解AngularJS验证、过滤器、指令
Jan 04 #Javascript
Bootstrap3 图片(响应式图片&图片形状)
Jan 04 #Javascript
javascript 注释代码的几种方法总结
Jan 04 #Javascript
JS数组返回去重后数据的方法解析
Jan 03 #Javascript
js实现复选框的全选和取消全选效果
Jan 03 #Javascript
You might like
《星际争霸2》终章已出 RTS时代宣告终结
2017/02/07 星际争霸
php的memcache类分享(memcache队列)
2014/03/26 PHP
PHP实现电商订单自动确认收货redis队列
2017/05/17 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
JavaScript prototype对象的属性说明
2010/03/13 Javascript
ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
2012/02/03 Javascript
初识Node.js
2014/09/03 Javascript
CSS3,HTML5和jQuery搜索框集锦
2014/12/02 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
2015/01/26 Javascript
JavaScript中DOM详解
2015/04/13 Javascript
js中substring和substr两者区别和使用方法
2015/11/09 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
js基于FileSaver.js 浏览器导出Excel文件的示例
2017/08/15 Javascript
原生javascript AJAX 三级联动的实现代码
2018/05/04 Javascript
浅谈Angular 观察者模式理解
2018/11/01 Javascript
使用python BeautifulSoup库抓取58手机维修信息
2013/11/21 Python
python实现扫描局域网指定网段ip的方法
2019/04/16 Python
python实现KNN分类算法
2019/10/16 Python
python3 字符串知识点学习笔记
2020/02/08 Python
python 基于PYMYSQL使用MYSQL数据库
2020/12/24 Python
解决Pycharm 运行后没有输出的问题
2021/02/05 Python
浅析与CSS3的loading动画加载相关的transition优化
2015/05/18 HTML / CSS
香港草莓网土耳其网站:Strawberrynet TR
2017/03/02 全球购物
Omio英国:搜索并比较便宜的巴士、火车和飞机
2019/08/27 全球购物
如何写出高性能的JSP和Servlet
2013/01/22 面试题
转党组织关系介绍信
2014/01/08 职场文书
机械个人求职信范文
2014/01/24 职场文书
电视购物广告词
2014/03/19 职场文书
《明天,我们毕业》教学反思
2014/04/24 职场文书
党支部换届选举方案
2014/05/08 职场文书
关于读书的演讲稿1000字
2014/08/27 职场文书
委托培训协议书
2014/11/17 职场文书
mybatis中sql语句CDATA标签的用法说明
2021/06/30 Java/Android
javascript代码简写的几种常用方式汇总
2021/08/23 Javascript
改造DE1103三步曲
2022/04/07 无线电