发布网友 发布时间:2022-04-29 00:25
共4个回答
热心网友 时间:2022-04-23 03:23
可以在js全局代码中,增加一个变量n,用作计数器,表示总图片数。
然后使用图片的onload事件,每成功加载一次图片,将计数器n减去1
当n变成0时,表示图片均加载完毕,这时即可开始执行其他JS代码。
具体示例代码:
var n=$pre4y_main.length;
热心网友 时间:2022-04-23 04:41
写个回调函数,传进onload里就可以了追问写个思路,哥哥
热心网友 时间:2022-04-23 06:16
当然啦,这里的onload事件handler是一个异步函数,注册了这个事件的handler之后代码就会继续执行,而当onload事件触发之后才会执行它的handler……
这样多半可以,我给个思路吧
/* 前略 */追问但是现在情况有点不同。那就是图片有很多个。要循环的等图片加载完才行。$img[0].onload是放在一个循环里面的。你看下我代码逻辑就知道了。
追答
嗯……我给你改一下吧。另外不要过于依赖库,连个选择器都非要用jQuery最后对你没有好处。
var $pre4y_main = $(".y_main:lt(4) img[freealign]");
热心网友 时间:2022-04-23 08:07
要把图片当成是图片对象才行~<br>var a=new image(); //这个是原生的js实例化<br>a.src=arr[shownum++].url;<br><br>然后image对象有一个属性“onload”,这个就是加载完成,当加载完成之后你可以执行一个函数比如<br>a.onload=function(){<br>alert("完成加载");<br><br>}<br>这样当你的图片加载完成后就执行下面的函数了~