首页  >  问答  >  正文

javascript - 知乎上的图片加载是什么原理?

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

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

或者,是别的什么方法?

我想大声告诉你我想大声告诉你2677 天前651

全部回复(4)我来回复

  • 仅有的幸福

    仅有的幸福2017-05-24 11:34:17

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

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

    回复
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-24 11:34:17

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

    回复
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-24 11:34:17

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

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

    回复
    0
  • 为情所困

    为情所困2017-05-24 11:34:17

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

    回复
    0
  • 取消回复