[TimLinux] JavaScript 如何在AJAX中替换元素的图片
2024-09-01 20:12:23
1. 示例代码
/*
* <img id="idTestImg" src="/static/test.png" />
*/
var idTestImg = document.getElementById('idTestImg');
var tmpImgObj = new Image(); // 也可以使用document.creatElement('img'); 创建效果是一样的。 tmpImgObj.src = '/static/new.png'; // 这个操作会触发从服务器请求图片的行为 if (tmpImgObj.complete) {
// 判断图片是否存在缓存中,缓存中的图片不需要onload操作
idTestImg.src = tmpImgObj.src;
} else {
// 不在缓存中的图片,下载完成之后,会触发load事件,在onload事件处理程序中,完成替换图片功能。
tmpImgObj.onload = function () {
idTestImg.src = tmpImgObj.src;
};
}
2. 说明
- 图像对象的创建方式有两种:new Image(); document.createElement('img');
- 给图像对象的src属性赋值,会触发浏览器向服务器请求图片资源的过程;
- 图片可能在缓存中,也可能来自服务器请求过来的资源,complete属性可以判断;
- load事件除了可以使用在body对象,也可以使用在img对象上。
- 可以不创建一个临时对象:直接将idTestImg.src赋值给一个url值,同样能够达到以上的效果。
最新文章
- ELK日志系统:Filebeat使用及Kibana如何设置登录认证
- C# Image Resizer
- 打印log
- [转] linux虚拟带库操作笔记
- html5 canvas雨点打到窗玻璃动画
- Material Design综合实例
- laravel Authentication and Security
- The type or namespace name &#39;****&#39; could not be found (are you missing a using directive or an assembly reference
- 清除mac上安装软件的用户信息
- Nginx学习之一-第一个程序Hello World
- Python 基础学习20151201
- 《算法导论》读书笔记之图论算法—Dijkstra 算法求最短路径
- CodeForces 621A Wet Shark and Odd and Even
- java Semaphore的介绍和使用
- nginx80端口被占用,启动失败。
- canvas 时钟动画
- Angular调用Asp.net Core JWT Authentication接口
- MySQL常用命令(二)
- c语言单片机中断服务程序
- [转贴]LTP--linux稳定性测试 linux性能测试 ltp压力测试 ---IBM 的 linux test project