洋洋招耳
ForeverLovel
视频和图片的处理方式相同,找vedio标签,文字的话,一般加载不会有什么问题,可以不考虑
慕粉3139704
<img src="./images.jpg" style="background:url(./bg.gif);width:100%;height:100%;"/>
是这样吗?
alltoyes
size()改成length
一只肥鹤
表示所有图片已加载完成
街角疯
oImg.src = img[i].src这行代码的作用是加载第i张图片(从0开始),而onload是在图片加载完成后才会执行,如果你把这句代码放在onload事件函数中,那么就陷入了死锁,实际上onload事件永远也不会执行
qq_忧零_0
哪一串代码
qq_忍住不哭_0
乌鸦嗳说话
当加载完成即100%时,如果是相等那么页面就会一直在100%的那个状态,不会显示主界面,这样设置可以避免这个问题!希望有用!
Angela0
慕粉3583189
多媒体,声音也可以这么做加起来就行
qq_多年后_1
imgs是一个节点,要用$().each(function(){})或者$.each(obj,[fn])
qq_多年后_1
不知道你源码,你可以打印document.getElementsByTagName('img')看看有没有数据。
多检查,再提问。
apianmuse
我最开始也是有这个问题,看了下评论有人说是新版本的size方法已经不支持了,我就去下载了代码,然后套用老师的jQuery,然后就好使了。
java转前端
onstatuschagne运行比外层的慢。这个时候的i其实each运行完的i(就是总数)。所以其实这个判断是num==图片总数
慕姐4007966
$('.loading b').html(parseInt(num/$('img').size()*100)+'%');
慕斯3073955
1.<script type="text/javascript" src="http://www.akcy.com/templets/akcy/js/jquery.js"></script>
2.<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
慕村4009116
$(function(){
var img = $('img');
var nums = img.length;
var start = 0;
img.each(function(i){
var oImg = new Image();
oImg.onload = function(){
oImg.onload = null;
start++;
console.log(start);
$('.loading b').html(parseInt(star/$('img').size()*100)+'%')
if(start == nums){
$('.loading').fadeOut();
}
}
oImg.src = img[i].src;
})
})老师的应该有点问题,我跟着老师写判断那块:if(star == i) 的话这块不可能为ture. 打印i出来:0,1,2,3,4
start打印出来 1,2,3,4,5 。这等不到一起啊…
所以就改了判断的那块。
测试过了没有问题。测试的时候记得把控制台的 disable cache勾选。这样打开就能更清楚看到进度了。。。
慕仔3495855