如何在使用Javascript加载Chrome时计算图像
How do I count images as they are loading in Chrome with Javascript?
我在一个页面上有大约四百个图像,我想在图像加载到页面上时向用户显示图像的增量计数器。它在Firefox上运行得很好,但我在IE和Chrome上遇到了问题。
var increment ={
start: function(){
$updateThree = $('.container').children('img').length;
increment.countImagesLoading();
getCount = setInterval(increment.updateImagesLoading,100);
},//end function
countImagesLoading:function(){
imgCount = 0;
$img = $('.container').children('img');
$img.one('load',function() {
imgCount++;
});
},
updateImagesLoading: function(){
$colThree.html('<strong>'+imgCount+'</strong>');
if(imgCount == $updateThree){
clearInterval(getCount);
//end the interval because all the images are loaded!
}
},
}
$(document).ready(increment.start);//document.ready
我还删除了间隔和对updateImagesLoading
的调用,只是让countImagesLoading
函数也用每个.load函数更新屏幕上的值,但无论我使用哪种方法,我仍然会得到相同的结果:
火狐,它工作。Chrome,它可以工作,但最终距离页面上应该加载的图像的真实数量(464)还差十五到二十个。IE,在所有图像完全加载之前,不会通过$colThree.html('<strong>'+imgCount+'</strong>');
显示计数更新,因此它为空,然后显示464。
这里我认为问题是这个脚本在ready
事件上执行,但图像在DOM中一找到就开始加载。
如果您可以以某种方式将所有图像的src更改为一个加载图像,并将实际的src放在其他一些属性中,比如data-src,那么问题就应该解决了。然后在就绪事件上,获取每个图片并加载图片,从data-src属性获取url。当它在JS ser中完全加载时,图片的url。
$('img').each(function(){
var src = $(this).data('src');
var img = new Image();
img.load = function(){
/*increase count here and set the src of the DOM img element*/
};
img.src = src;
});
相关文章:
- Chrome WebKitGetUserMedia
- JQueryhide()不适用于Mozzilla,但适用于Chrome
- 在chrome.tabs.onCreated之后加载HTML页面
- Chrome 开发工具:如何计算加载弹出窗口并将其显示在页面上所需的总时间
- Google Chrome中的计算属性名称({[a]:1})
- JQuery图像大小计算没有'不能在Chrome/Safari中工作
- 后台位置的计算样式在Chrome中返回0%0%
- Chrome和Firefox之间的高度计算不同
- 文本区 |val().length 不计算 chrome 中的“输入/换行符”
- 如何在使用Javascript加载Chrome时计算图像
- 借助firebug或IE 8调试器或chrome调试器来计算javascript函数流的方法
- 如何计算mozilla和chrome网络中现有资源的大小
- 计算safari和chrome中svg路径的getBBox()中包含的控制点
- 如何计算chrome扩展上的页面加载事件
- Chrome调试器:每次计算Nan或Infinity时,是否可以停止调试器中的脚本
- 为什么这些javascript表单计算在Safari和Firefox中不起作用,但在Chrome中却起作用
- 为什么Firefox在计算柏林噪声时比Chrome慢30倍?
- 为什么ie浏览器和Chrome浏览器的计算日期不一致?
- 如何在linux上强制chrome重新计算/重新渲染“:悬停”;造型
- Chrome JavaScript计算行高,位置不同