使用JavaScript为一张图片设置备选路径的方法
发布时间 - 2026-01-10 22:17:19 点击率:次在做网页开发的时候,有时候希望给图片设置一个备选路径,即,当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获取input file绝对路径的方法(推荐)
# js获取上传文件的绝对路径实现方法
# JavaScript获取当前url根目录(路径)
# 通过js获取上传的图片信息(临时保存路径
# 名称
# 大小)然后通过ajax传递给后端的方法
# 浅谈NodeJS中require路径问题
# JS取得绝对路径的实现代码
# 加载
# 可以使用
# 小编
# 这一
# 在此
# 注意到
# 给大家
# 所述
# 绑定
# 给我留言
# 感谢大家
# 切换到
# 疑问请
# 有任何
# js
# main
# jpg
# image
# strong
# DOM
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
怎样使用JSON进行数据交换_它有什么限制
Laravel如何使用Socialite实现第三方登录?(微信/GitHub示例)
Laravel如何实现RSS订阅源功能_Laravel动态生成网站XML格式订阅内容【教程】
购物网站制作费用多少,开办网上购物网站,需要办理哪些手续?
jQuery中的100个技巧汇总
canvas 画布在主流浏览器中的尺寸限制详细介绍
北京网站制作费用多少,建立一个公司网站的费用.有哪些部分,分别要多少钱?
百度输入法ai面板怎么关 百度输入法ai面板隐藏技巧
Win11搜索不到蓝牙耳机怎么办 Win11蓝牙驱动更新修复【详解】
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
Laravel Blade模板引擎语法_Laravel Blade布局继承用法
Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】
Laravel如何发送系统通知?(Notification渠道示例)
今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】
linux top下的 minerd 木马清除方法
iOS验证手机号的正则表达式
Laravel如何使用Gate和Policy进行权限控制_Laravel权限判定与策略规则配置
免费视频制作网站,更新又快又好的免费电影网站?
Laravel怎么创建自己的包(Package)_Laravel扩展包开发入门到发布
深圳网站制作的公司有哪些,dido官方网站?
Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询
Laravel如何使用.env文件管理环境变量?(最佳实践)
Laravel如何优雅地处理服务层_在Laravel中使用Service层和Repository层
Laravel如何使用集合(Collections)进行数据处理_Laravel Collection常用方法与技巧
Java Adapter 适配器模式(类适配器,对象适配器)优缺点对比
Javascript中的事件循环是如何工作的_如何利用Javascript事件循环优化异步代码?
通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】
Laravel怎么实现模型属性的自动加密
如何在阿里云虚拟主机上快速搭建个人网站?
Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】
创业网站制作流程,创业网站可靠吗?
用v-html解决Vue.js渲染中html标签不被解析的问题
学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?
Laravel如何设置定时任务(Cron Job)_Laravel调度器与任务计划配置
iOS发送验证码倒计时应用
如何快速搭建高效WAP手机网站?
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
如何用y主机助手快速搭建网站?
手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?
Laravel如何为API编写文档_Laravel API文档生成与维护方法
百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭
焦点电影公司作品,电影焦点结局是什么?
Windows10如何更改计算机工作组_Win10系统属性修改Workgroup
Android自定义listview布局实现上拉加载下拉刷新功能
Laravel中间件如何使用_Laravel自定义中间件实现权限控制
如何在浏览器中启用Flash_2025年继续使用Flash Player的方法【过时】
Laravel如何使用查询构建器?(Query Builder高级用法)
HTML透明颜色代码怎么让下拉菜单透明_下拉菜单透明背景指南【技巧】
哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?
JavaScript如何实现继承_有哪些常用方法

