【问题标题】:How to load images sequentially? [closed]如何按顺序加载图像? [关闭]
【发布时间】:2014-11-03 10:03:58
【问题描述】:

我正在开发一个长滚动网站,其中包含许多完整的背景高分辨率图像。由于默认情况下所有图像都是并行加载的,因此当前加载时间太长。

所以在我自定义写一些东西之前先加载什么先加载然后再加载(这样第一个滚动将几乎立即加载,用户将在阅读第一部分时等待剩余部分:P),有吗有没有开箱即用的脚本?

我正在考虑一些现有的代码,它们将读取每个 img 标签或 background-image property/style-attribute 并根据它们在 HTML 上的外观或一些额外的属性顺序加载图像。

我更喜欢 vanilla JS 或 jQuery。如果找不到,我自己写一个插件,投票/鼓励采纳!

【问题讨论】:

  • 你可以在“稍后显示”的东西周​​围包裹一个
  • 问题没有显示任何努力/尝试。你应该尝试谷歌“延迟加载图像”,显示几种技术
  • Lazy loading images的可能重复
  • @dandavis 我考虑过<template> 标签,但这仍然需要编写我的自定义代码,我试图避免这种情况。
  • @Mauro:以最简单的形式,是的。但是模板可以发出一个片段,您可以按照您认为合适的任何顺序,以小批量或大批量切割片段的大块。

标签: javascript jquery ajax image performance


【解决方案1】:

我创建了一个 jQuery 插件来实现这一点。看看这个!这是一项正在进行的工作,因此欢迎您发表评论和建议!我从Lazy Load 那里得到了很多。

https://github.com/mspivak/sequencial_load

【讨论】:

    【解决方案2】:

    我会尝试使用像 LazyLoad 这样的插件: http://www.appelsiini.net/projects/lazyload

    有一个阈值会开始在屏幕外加载一定数量的像素。这样,当访问者开始向下滚动时,它将开始加载接下来的几个部分。

    【讨论】:

    • 感谢您的回答。但是,这并不完全是延迟加载。这不完全是延迟加载,我希望图像按顺序加载,而不是它们应该出现在屏幕上。我不想节省服务器/用户带宽,而是更早地展示网站的第一部分。我希望加载它们,因为它们出现在 HTML 或任意(使用特殊属性或某物)上。检查有关问题 cmets 的对话。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-22
    相关资源
    最近更新 更多