为什么小图片都占用了那么多内存
时间:2011-11-10
来源:互联网
大家好,本人有一个项目,其中有一个功能是点击某按钮,从服务器端加载50张图片,展示于网页,可实现通过鼠标滚轮调整图片大小。用户操作模式为根据图片上的内容将图片归类,归完一张,则网页上少一张。现遇到如下问题:
1、50张图片,每张都不超过30K,渲染到网页上后,占地面积是1180*820。而加载前跟加载后,IE/FF/chrome的内存均飙升了600M;
问:浏览器展示图片时所耗的内存跟那些因素有关,也就是对于<img src=...>这个元素的渲染,所耗的内存取决于那些因素?跟图片本身的“重量”(也就是多少字节数)有关吗?跟img的width、height关系大吗?
2、当我通过鼠标滚轮调整图片大小时,放大图片,则内存上升;反之则内存下降。图片调整大小我是这么实现的:
img.style.width = xxx; img.style.height = xxx;
问:这个现象可能恰恰能解释第一个问题。可不可以这么理解:浏览器要显示图片,则需在页面上腾出“地方”给图片,这里的“地方”就是内存,而图片占用的地方面积越大,内存也就耗得越多?
3、问:有什么好的方法,可以使图片渲染到网页上时,不会使浏览器消耗内存飙得太高?我项目中其实需要加载的图片远远大于50张,但当时考虑到内存,所以限制为50。等用户处理到一定时候,只剩10张时,系统自动加载40张,于是网页上又有50张,于是浏览器内存一直居高不下,用户反馈很卡。
4、谢谢~
1、50张图片,每张都不超过30K,渲染到网页上后,占地面积是1180*820。而加载前跟加载后,IE/FF/chrome的内存均飙升了600M;
问:浏览器展示图片时所耗的内存跟那些因素有关,也就是对于<img src=...>这个元素的渲染,所耗的内存取决于那些因素?跟图片本身的“重量”(也就是多少字节数)有关吗?跟img的width、height关系大吗?
2、当我通过鼠标滚轮调整图片大小时,放大图片,则内存上升;反之则内存下降。图片调整大小我是这么实现的:
img.style.width = xxx; img.style.height = xxx;
问:这个现象可能恰恰能解释第一个问题。可不可以这么理解:浏览器要显示图片,则需在页面上腾出“地方”给图片,这里的“地方”就是内存,而图片占用的地方面积越大,内存也就耗得越多?
3、问:有什么好的方法,可以使图片渲染到网页上时,不会使浏览器消耗内存飙得太高?我项目中其实需要加载的图片远远大于50张,但当时考虑到内存,所以限制为50。等用户处理到一定时候,只剩10张时,系统自动加载40张,于是网页上又有50张,于是浏览器内存一直居高不下,用户反馈很卡。
4、谢谢~
作者: I_am_a_java_CaiNiao 发布时间: 2011-11-10
我也很头疼这类问题。
作者: yxy353245805 发布时间: 2011-11-10
补:我在本地建立一个静态HTML文件,即使里面放上100个img,图片width和height放得再大,IE均只耗16M内存,继续求解。
作者: I_am_a_java_CaiNiao 发布时间: 2011-11-10
ID 很牛B!
作者: gavin_ts 发布时间: 2011-11-10
好问题,以前没注意过呢,关注中。。
作者: hongfeideng 发布时间: 2011-11-10
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28