千家信息网

ajax如何异步加载图片

发表于:2025-02-23 作者:千家信息网编辑
千家信息网最后更新 2025年02月23日,这篇文章主要为大家展示了"ajax如何异步加载图片",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"ajax如何异步加载图片"这篇文章吧。具体如下:图片一般比
千家信息网最后更新 2025年02月23日ajax如何异步加载图片

这篇文章主要为大家展示了"ajax如何异步加载图片",内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下"ajax如何异步加载图片"这篇文章吧。

具体如下:

图片一般比较大,所以他们都是在基本网页加载后才逐渐加载上的,整个加载的过程非常不雅观,或者是从模糊逐渐变清晰,或者是从上往下拓展开(当然你也可以认为这些都是不错的特效)。如果是通过定时更换img的src属性来实现图片的动态更换,由此带来的闪烁更让它难以接受,这可不是用alt属性就能让人愉快的。

联系时下比较热门的,号称"无"刷新的AJAX技术,利用XMLHttpRequest对象发起异步请求,待图像加载完毕再动态插入到"前台"的HTML页面上。应该可以满足需求,不过XMLHttpRequest对象返回的对象只有两个属性responseXML和responseText,前者是XML对象,后者是返回的纯文本内容,似乎没有图片所需要的二进制数据...退一步,即使能用responseText取回图片的二进制数据,我们又如何能够将它插入到前台页面呢?将img的src属性换成请求的url?

说干就干,写个图像幻灯片的代码来验证自己的想法:

            Image Slide                        

以上代码以1000毫秒为时间间隔循环显示图片0.jpg - 10.jpg,效果比较明显,确实消除了闪烁。那么它的原理呢?每张图片的显示都分为两个步骤:
用XMLHttpRequest对象从服务器获取图像,缓存图像到本地的浏览器缓冲区。
从本地的浏览器缓冲区取得图像进行显示。
因为在第二步从取图片到显示的时间很短,所以用户基本上觉察不出任何闪烁。可见,以上技术基于所请求的图像是可缓存的的假设,如果图像是不可缓存的,是不是以上代码就不能正常工作了呢?

还是让代码来说话,把以上代码做些更改:

function displayImage(){ var url = "./" + i + ".jpg"; var url = "./image.php?filename=" + i + ".jpg";    makeAsyncRequest(url, function (url) {        var div = document.getElementById("image");        var img = div.getElementsByTagName("img");

再写一个php脚本用来传送所请求的图片:

果真不出所料,又出现了闪烁...

看来还需要另想办法,闭门造车是行不通了,求助google这位百事通先生吧!功夫不负有心人,终于还是被我找到了,欣喜归欣喜,结果还是让我大跌眼镜,img竟然有onload的事件回调接口,只能庆幸自己的眼镜是树脂的了,"眼镜掉了我不怕不怕啦,不怕不怕不怕啦..."

还等啥,当然是代码伺候了:

            Image Slide                        

"She is an ungly girl!"没啥好说的,不可缓存的图像的情况:

i ++;        window.setTimeout("displayImage();", 1000);    } img.src = "./" + i + ".jpg"; img.src = "./image.php?filename=" + i + ".jpg"; }    

以上是"ajax如何异步加载图片"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

图片 代码 图像 对象 内容 属性 缓存 眼镜 篇文章 还是 欣喜 两个 二进制 前台 动态 技术 数据 浏览器 缓冲区 页面 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 西安软件开发类企业 机房服务器单价多少钱 数据库的比较 三大模式 数据库 上海新一代网络技术服务咨询报价 sql向数据库中添加数据 医疗诊所管理软件开发商 安全可靠替代工程使用数据库 全局变量数据库等于0 沭阳直销网络技术厂家价格 服务器里用什么安全软件 网络安全刑事犯罪案例 地方网络安全和信息化条例 赣州哪里有学软件开发 中国社科院数据库的技术支持 锦江区猫头鹰软件开发工作室 数据库字段记录不重复数据库 中国最好的软件开发上市公司 铁岭新零售软件开发设计 cia中国网络安全产业联盟 速达5000数据库如何安装 sap网络安全服务上岗证答案 在创建数据库后应该怎么做 路南区项目网络技术售后保障 武清招聘网络技术支持 深圳苹果软件开发如何收费 网络安全领域研究成果 合肥正规网络技术咨询服务电话 获取服务器证书 数据库网络管理软件
0