使用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 】
相关推荐:
Bootstrap整体框架之JavaScript插件架构
Laravel如何构建RESTful API_Laravel标准化API接口开发指南
香港网站服务器数量如何影响SEO优化效果?
简单实现Android验证码
大学网站设计制作软件有哪些,如何将网站制作成自己app?
Laravel怎么连接多个数据库_Laravel多数据库连接配置
如何为不同团队 ID 动态生成多个非值班状态按钮
用v-html解决Vue.js渲染中html标签不被解析的问题
Python文件流缓冲机制_IO性能解析【教程】
黑客如何通过漏洞一步步攻陷网站服务器?
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
Win10如何卸载预装Edge扩展_Win10卸载Edge扩展教程【方法】
怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?
Laravel如何升级到最新版本?(升级指南和步骤)
JavaScript 输出显示内容(document.write、alert、innerHTML、console.log)
php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】
如何自定义建站之星模板颜色并下载新样式?
使用豆包 AI 辅助进行简单网页 HTML 结构设计
SQL查询语句优化的实用方法总结
如何在Tomcat中配置并部署网站项目?
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
Laravel如何实现API资源集合?(Resource Collection教程)
Laravel Session怎么存储_Laravel Session驱动配置详解
香港代理服务器配置指南:高匿IP选择、跨境加速与SEO优化技巧
怎么用AI帮你设计一套个性化的手机App图标?
Laravel怎么进行浏览器测试_Laravel Dusk自动化浏览器测试入门
公司网站制作价格怎么算,公司办个官网需要多少钱?
如何在搬瓦工VPS快速搭建网站?
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
企业网站制作这些问题要关注
Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】
Laravel Pest测试框架怎么用_从PHPUnit转向Pest的Laravel测试教程
网站建设保证美观性,需要考虑的几点问题!
edge浏览器无法安装扩展 edge浏览器插件安装失败【解决方法】
高防网站服务器:DDoS防御与BGP线路的AI智能防护方案
实现点击下箭头变上箭头来回切换的两种方法【推荐】
Claude怎样写结构化提示词_Claude结构化提示词写法【教程】
Laravel distinct去重查询_Laravel Eloquent去重方法
如何快速查询网站的真实建站时间?
浅述节点的创建及常见功能的实现
企业在线网站设计制作流程,想建设一个属于自己的企业网站,该如何去做?
Laravel如何使用.env文件管理环境变量?(最佳实践)
javascript基本数据类型及类型检测常用方法小结
Laravel项目怎么部署到Linux_Laravel Nginx配置详解
谷歌Google入口永久地址_Google搜索引擎官网首页永久入口
Laravel如何使用Vite进行前端资源打包?(配置示例)
音响网站制作视频教程,隆霸音响官方网站?
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
Google浏览器为什么这么卡 Google浏览器提速优化设置步骤【方法】
Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】

