js图片加载 完成之前显示loading中的图片

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情
<html>  
<title>js图片未加载完显示loading效果</title>  
<body>  
<style>  
img{float:left;width:200px;height:200px;margin:0 10px 10px 0}  
</style>  
<script>  
//判断浏览器  
var Browser=new Object();  
Browser.userAgent=window.navigator.userAgent.toLowerCase();  
Browser.ie=/msie/.test(Browser.userAgent);  
Browser.Moz=/gecko/.test(Browser.userAgent);  

//判断是否加载完成  
function Imagess(url,imgid,callback){      
    var val=url;  
    var img=new Image();  
    if(Browser.ie){  
        img.onreadystatechange =function(){    
            if(img.readyState=="complete"||img.readyState=="loaded"){  
                callback(img,imgid);  
            }  
        }          
    }else if(Browser.Moz){  
        img.onload=function(){  
            if(img.complete==true){  
                callback(img,imgid);  
            }  
        }          
    }      
    //如果因为网络或图片的原因发生异常,则显示该图片  
    img.onerror=function(){img.src="./static/images/failed.png"}  
    img.src=val;  
}  

//显示图片  
function checkimg(obj,imgid){  
document.getElementById(imgid).style.cssText="";  
document.getElementById(imgid).src=obj.src;  
}  
//初始化需要显示的图片,并且指定显示的位置  
window.onload=function(){  
var imglist=document.getElementById("imagelist").getElementsByTagName('img');  
for(i=0;i<imglist.length;i++)  
{  
    imglist[i].id="img0"+i;  
    //imglist[i].src="http://www.86y.org/images/loading.gif";  
    imglist[i].style.cssText="background:url(./static/images/loading.gif) no-repeat center center;"  
    Imagess(imglist[i].getAttribute("data"),imglist[i].id,checkimg);  
}  
}  
</script>  
<div id="imagelist">  
<img data="./static/images/1.jpg" />  
<img data="./static/images/2.jpg" />  
<img data="./static/images/3.jpg" />  
<img data="./static/images/4.jpg" />  
<img data="./static/images/5.jpg" />  
</div>  
</body>  
</html> 

本文转载自:https://blog.csdn.net/weixin_37221852/article/details/81298735

js实现图片在未加载完成显示加载中字样 首先判断浏览器再判断图片是否加载完成,如果还未加载显示加载中...”,思路及代码如下 立即下载

相关推荐

JS实现的自定义显示加载等待图片插件(loading.gif)

主要介绍了JS实现的自定义显示加载等待图片插件,涉及javascript针对图片的动态加载实现技巧,具有一定参考借鉴价值,需要的朋友可以参考下

js多图预加载以及显示进度

在网页中如果有多个图片并且体积较大的情况下,加载页面就会出现图片一张张显示出来参差不齐的问题,这往往很不美观而且影响用户体验。这时我们可以用loading页加进度条的方式对图片进行统一加载。 先上效果图 这里我只加入了简单的进度条仅做演示。 实现方案 框架用的是vue,进度条用了下element的。 实现非常简单,以vue举例只需用到 percentage(进度)、progressShow(进度条显示控制)、imgList(原始图片数组)、readyImg(加载完成图片数组)四个参数。 在页面加载时调用图

weixin_43756315的博客 1088

image图片加载完再显示

解决思路:先定义图片地址字段为null,再使用js图片加载接口进行图片加载,在加载完回调事件里再给渲染字段赋值。问题描述:在使用image加载大图的时候图片会从上往下一点点的渲染,会造成不好的用户体验。

weixin_48495574的博客 878

js图片加载,并显示进度

加载原理: 浏览器如果存在多张地址一样的图片,只会发送一次请求;第二次直接从缓存中获取; 知道这个原理,我们就可以通过js的onload函数知道图片加载完成; 现在有这样的需求: 要求页面全部图片全部隐藏,当图片全部加载完毕之后再让图片显示, 并且控制台显示进度。 代码如下 <!DOCTYPE html> <html> <head> &l...

jayLog的博客 1760

javascript 图片loading的实现,zencart

我们在设计一些图片比较多的网页时,为了增强用户体验,希望图片加载的时候有个loading动画效果,而不是由空白到一下子出来。在zen cart的二次开发过程中同样也遇到了这个问题,下面是我的解决方案。 首页给图片设置一个默认的loading动画,再分配一个id,如实际上加载过程通过一个函数来完成 function addListener(element, type, expression, b

CDSN大帝的专栏 593

js页面加载实现loading提示效果

由于页面在加载过程中请求了很多资源,导致打开过慢,且页面无提示,对用户不友好,测试人员希望增加loading效果。 参考如下步骤可行。 实际项目展示动态loading图有自有的方法,不便贴代码,以下用展示简单语句进行示例: //在页面未加载完毕之前显示loading效果 var _LoadingHtml = '正在加载中,请稍后。。。'; //呈现loading效果 docu...

蓝关故人 7156

在页面加载先出现加载loading,页面加载完成之后再显示页面

在此加入一个关于页面加载成功之前先展现一个loading的案例: 如下代码写入js里放在html头部即可实现需求:添加的可以自己在css文件设置宽高,也可以放入一个background的gif的loading图片 //在页面未加载完毕之前显示loading Html自定义内容 var _LoadingHtml = '页面加载中,请等待...'; //呈现loading效果 ...

weixin_30399155的博客 1万+

js实现图片加载原理

有时候一个网页会包含很多的图片,例如淘宝京东这些购物网站,商品图片多只之又多,页面图片多,加载图片就多。服务器压力就会很大。不仅影响渲染速度还会浪费带宽。比如一个1M大小的图片,并发情况下,达到1000并发,即同时有1000个人访问,就会产生1个G的带宽。 为了解决以上问题,提高用户体验,就出现了懒加载方式来减轻服务器的压力,优先加载可视区域的内容,其他部分等进入了可视区域再加载,从而提高性能。...

tomorrownan的博客 12万+

js实现图片加载中效果 loading

关于loading加载的2个插件。 jQuery.lazyload Echo.js 这两个插件功能都满足不了需求,我们这里只是因为图片加载比较慢,需要一个转圈而已,并不是需要懒加载。 而且,这两个插件也无法设置图片加载后的显示。 自己写一个 原理: img标签不使用src进行资源加载。 使用 Image对象获取img标签上的src-data属性,进行加载,判断加载完成后回显。 ...

一个吃水不忘挖井人的博客。希望能帮助到你 6372

vue实现图片加载完成loading组件

本人新开个人博客,后期所有文章只在博客中更新!         export default {         props: ['src'], // 父组件传过来所需的url         data() {             return {                 url: 'http://www.86y.org/images/loading.gif'

_破败的博客 2万+

css 页面加载完成之前loading

什么时候显示loading 1.DOM页面加载完成之前 $(function () { setTimeout(() => { $('#page').show(); $('.preloader').hide(); }, 600); }) 2.DOM、图片JS文件加载完成之前 window.onload = function () { ...

这里是迷阵的博客耶 872

vue图片加载完成增加loading效果

这次给大家带来vue图片加载完成增加loading效果,vue图片加载完成增加loading效果的注意事项有哪些,下面就是实战案例,一起来看一下。 如下所示: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18...

hahahhahahahha123456的博客 9515

js图片加载完成显示loading

&amp;lt;html&amp;gt; &amp;lt;title&amp;gt;js图片加载显示loading效果&amp;lt;/title&amp;gt; &amp;lt;body&amp;gt; &amp;lt;style&amp;gt; img{float:left;width:200px;height:200px;margin:0 10px 10px 0} &amp;lt;/styl

tangyuhui 4265

js:说说页面加载之前那些事(loading、多函数加载、mounted)

页面加载完全之前这段时间,还真的挺重要...有比如loading效果可以“稳住”用户,适当的动画也可以让用户“眼一亮”。这里笔者分享一下原生&vue中页面加载完全之前那点事,咱也来唠唠...

flying meng的菜鸟居 2747

js图片加载完成显示loading效果

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>loading</title> </head> <body> <img id="img"> <script> ...

Bright2017的博客 2313

vue项目中使用Js判断图片是否加载完 所有图片加载完成展示Loading效果

vue项目中使用Js判断图片是否加载完 所有图片加载完成展示Loading效果。用户创建自己的页面,给创建好的内容页面增加皮肤效果。选择某一皮肤后,当该皮肤中的所有图片加载完后,再展示皮肤效果;加载图片的时候展示loading效果。

蒲公英芽的博客 6244

加载gif图片html,JS实现的自定义显示加载等待图片插件(loading.gif)

本文实例讲述了JS实现的自定义显示加载等待图片插件。分享给大家供大家参考,具体如下:在工作中遇到了一个问题 —— 某个业务流程分为几个阶段,每个阶段如果在数据没有显示出来之前就要显示加载图片loading.gif文件,如果有数据了就消失。为此,自己写了一个方法,方便整个工程使用。showhide//创建加载对象var obj = new loadingImg();//显示加载图片function ...

weixin_34352565的博客 2223

图片加载完成显示loading

img 图片加载完之后,再执行某些操作 function showBallDom() { Toast.loading('', 0, null, true) // antd mobile的loading // 加载完几张图片之后再进行操作,就在数组里写几张图片链接 let promiseAll = [], assetsImageList = [ 'https://123.png', 'https://234.png', '

周凤伟的博客 1426

vue中gif加载一次_vue图片加载完成增加loading效果

这次给大家带来vue图片加载完成增加loading效果,vue图片加载完成增加loading效果的注意事项有哪些,下面就是实战案例,一起来看一下。如下所示: export default {props: ['src'], // 父组件传过来所需的urldata() {return {url: 'http://www.86y.org/images/loading.gif' // 先加载loadi...

weixin_29670781的博客 2010
上一篇: js中获取对象属性的两种方式
下一篇: js数组的五种迭代方法
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值