素材牛VIP会员
知乎上的图片加载是什么原理?
 爱***丘  分类:PHP代码  人气:981  回帖:5  发布于6年前 收藏

一开始,都是模糊的,当在屏幕视图范围内,就会显示高清。

是不是一开始加载的是预处理的低像素的图片,随后再显示高清图片?

或者,是别的什么方法?

讨论这个帖子(5)垃圾回帖将一律封号处理……

Lv1 新人
陌***人 PHP开发工程师 6年前#1

好像没那么复杂吧?
因为在玩摄影,到了一定的程度就接触了些Photoshop,在编辑完jpg格式照片保存的时候,有好几个选项可以选,其中有几个是关于在网页中挂载图片的,一个是一行一行的加载,还有一个是先加载模糊的,然后再逐渐清晰,还有一个是先加载黑白的再逐步变为彩色的。如果在本地实验,速度太快,除非照片超大,否则看不出效果。

Lv4 码徒
12***mo UI设计师 6年前#2

原理上面都说的差不多。这里我也做成了一个vue的组件,还将就能自己用
vue-img-loader

Lv5 码农
de***st CEO 6年前#3

我的理解是 先加载一个小图,然后用 css3 滤镜模糊一下,然后懒加载,大图加载完成后替换一下 src .

具体可以参考一下这篇文章 http://www.jackpu.com/medium-...

Lv3 码奴
韩***3 学生 6年前#4

知乎是跟 Medium 一样用 canvas 来模糊小图的,大图加载完了就去掉。好处是可以控制模糊的算法,缺点就是比较重。

我这里是利用了浏览器默认模糊小图的方式来过渡,https://blog.crimx.com/2016/1...,好处是比较轻,兼容性也不错,但小图得事先模糊才能有比较好的效果。不考虑兼容性也可以用 CSS 模糊。

Lv6 码匠
zc***78 软件测试工程师 6年前#5

filter: blur(10px), 加载完成 filter: blur(0)

 文明上网,理性发言!   😉 阿里云幸运券,戳我领取