请教如何用jQuery或其他办法实现在图片A加载完成前显示图片B 100

因为页面里有很多图片A,比较大,加载需要一定时间,所以我想在真实图片加载前显示个图片B(例如,“正在加载”字样)。请问如何用jQuery或者别的办法实现,谢谢。... 因为页面里有很多图片A,比较大,加载需要一定时间,所以我想在真实图片加载前显示个图片B(例如,“正在加载”字样)。

请问如何用jQuery或者别的办法实现,谢谢。
展开
 我来答
zwcan241
2013-02-17
知道答主
回答量:55
采纳率:0%
帮助的人:19万
展开全部
<script>
function hideloading(obj){
var $this=$(obj);
$this.show().next("img").hide();

}
</script>
<div>
<img src="xxx.jpg" onload="hideloading(this)" style="visibility: hidden" /> 要显示的图片
<img src="loading.png"/> 等待图片

</div>

思路大概就是这样
追问
有点明白了,那个next("img")是指下一个图片的意思吗?能否按照以下这样重新写一下,然后我再按图索骥,谢谢。

正式图片:
等待图片:
追答
next("img")是同级的下个img标签,具体可以参考api,原理懂了,你可以试着自己摸索,出问题在问哈
手名有0X
2013-02-17 · TA获得超过835个赞
知道小有建树答主
回答量:722
采纳率:100%
帮助的人:469万
展开全部
jquery的ajax方法中有参数的,你可以在beforeSend中调用一个现实正在加载字样的图片,或者那种转圈的“菊花”的图片。
具体实现过程可以是在页面加载完成后调用一个ajax方法来加载你的图片,图片加载完成之前先用beforesend来加载一个图片
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
青鸟中关村专家
2015-07-21 · 知道合伙人软件行家
青鸟中关村专家
知道合伙人软件行家
采纳数:1734 获赞数:8440
就职于北大青鸟中关村,自2004年踏入北大青鸟这个行业,已经有11年工作经验和8年的培训经验,寓教于乐

向TA提问 私信TA
展开全部
function loadimg(arr,funLoading,funOnLoad,funOnError){
var numLoaded=0,
numError=0,
isObject=Object.prototype.toString.call(arr)==="[object Object]" ? true : false;
 
var arr=isObject ? arr.get() : arr;
for(a in arr){
var src=isObject ? $(arr[a]).attr("data-src") : arr[a];
preload(src,arr[a]);
}
 
function preload(src,obj){
var img=new Image();
img.onload=function(){
numLoaded++;
funLoading && funLoading(numLoaded,arr.length,src,obj);
funOnLoad && numLoaded==arr.length && funOnLoad(numError);
};
img.onerror=function(){
numLoaded++;
numError++;
funOnError && funOnError(numLoaded,arr.length,src,obj);
}
img.src=src;
}
 
}
参数说明:
  arr:可以是存放图片路径的一个数组,也可以是选取到的img的jquery对象
  funLoading:每一个单独的图片加载完成后执行的操作
  funOnLoad:全部图片都加载完成后的操作
  funOnError:单个图片加载出错时的操作

 

调用示例:loadimg($("img"),funloading_obj,imgonload,funOnError);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
heyuhua10
2013-03-04
知道答主
回答量:15
采纳率:0%
帮助的人:2.9万
展开全部
这个很简单啊,在你放图片的的哪里在加一个div里面放“正在加载的图片”,然后在js里面控制,在进加载大图片的方法最前面把“正在加载”的图片display属性设置block,然后在加载方法完成后的success里面在把“正在加载”的图片display属性设置成none就行了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tatooo
2013-02-18 · TA获得超过2119个赞
知道小有建树答主
回答量:2497
采纳率:46%
帮助的人:674万
展开全部
如果你只是想显示正在加载这样的字样就简单了
只要设置图片a的背景为图片b就行了
在a没有加载出来之前是可以显示背景的
这样你要的效果就出来了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式