gpt4 book ai didi

javascript - 如何在不滚动的情况下强制为安装 "lazy load"的网页加载图像?

转载 作者:行者123 更新时间:2023-11-30 16:48:47 26 4
gpt4 key购买 nike

我实现了一个 Chrome 扩展。该扩展程序需要获取网页的所有图片 URL。但是,某些网页有“延迟加载”插件。我的问题是我是否仍然可以在不需要手动向下滚动的情况下获取 URL?

最佳答案

许多延迟加载插件将实际 URL 存储在 data-* 部分。向下滚动时,就在图像标签进入 View 之前,data-* 内容设置在 src 属性上以开始加载图像。

您可以像这样遍历所有图像标签来查找链接,例如:

var images = document.querySelectorAll("img"),
links = [], i = 0, img;

while(img = images[i++])
links.push(img.dataset.original || img.src);

但请注意,data-* 持有者没有命名标准,因此不同的插件将使用不同的名称 - 您必须手动收集这些名称(例如 this plugin 使用名称 data-original this one 使用 data-layzr 等等)。

你可以做一个额外的步骤来循环遍历 dataset 集合来找到任何似乎包含 URL 的字符串(如果 src 是空的),但也可以这样容易出错,因为来自同一服务器的图像通常是相对链接,而 data-* 也可以包含其他数据。

关于javascript - 如何在不滚动的情况下强制为安装 "lazy load"的网页加载图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30839469/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com