JavaScript-有没有什么方法在载入完成前得到图片的宽高?

服务器管理 服务器管理 主题:1035 回复:2217

JavaScript-有没有什么方法在载入完成前得到图片的宽高?

归属感 发布于 2017-03-15 字数 195 浏览 1142 回复 3

例如,我的网站拥有一张缩略图,和一张该缩略图的原图
该缩略图假设已经cache在用户的浏览器缓冲中了
用户在打开该页面,我会用:

<img src="缩略图地址" lazyload="原图地址">

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

支持 Markdown 语法,需要帮助?

评论(3

夜无邪 2017-06-25 3 楼

对于这个问题 我采用的插入临时img的方法,在获取原图的地址后,用JQuery插入一个不可见的临时img, 由于没有设置其它属性,所以这个img默认就是原图的高宽,再通过获取该img的高宽即原图的高宽
第一次发言 如有不妥 请指正。 Thanks!

浮生未歇 2017-05-20 2 楼

比较简单的方法是在后台解析好图片的尺寸后插入html标签,比如 <img width="100" height="200" data-width="1000" data-height="2000" >。然后用Js读取标签中的原图尺寸即可,这样兼容性最好

如果只能用前端的手段,你可以直接使用这个图片预加载jQuery插件: http://www.planeart.cn/?p=1157

最后,Java和Javascript是两码事

偏爱自由 2017-05-09 1 楼

这个很简单了,你可以把信息附加在缩略图上嘛,例如生成缩略图的时候顺便把原图的宽和高附加在缩略图上。一个比较简单的方案是,对于原图pic.jpg(800*900)你可以生成一个pic_800_900.jpg的缩略图,取到缩略图的时候自然就知道原图的高和宽了。