使用 JavaScript 检测使用的 srcset 或图片标签源

Detect used srcset or picture tag source with JavaScript

本文关键字:标签 srcset JavaScript 检测 使用      更新时间:2023-09-26

当你像这样使用srcset时:

<img src="example-src.jpg" srcset="example-1x.jpg 1x, example-2x.jpg 2x" />

或者使用这样的图片标签:

<picture>
   <source media="(min-width: 64em)" src="high-res.jpg">
   <source media="(min-width: 37.5em)" src="med-res.jpg">
   <source src="low-res.jpg">
   <img src="fallback.jpg" />
</picture>

是否可以找出浏览器决定使用的URL?检查<img>标签本身的src属性实际上并不能告诉您加载了哪个图像。

(抱歉,如果这是重复的。我在任何地方都找不到解决方案。

您至少可以在某些浏览器中使用currentSrc(尽管我不知道是哪个浏览器。

document.getElementById('myImage').currentSrc;

或。。。

jQuery('#myImage').prop('currentSrc');

如果你现在只想使用源代码:

  1. 使用检查 (ctrl+shift+i)。
  2. 转到"网络"选项卡,确保缓存已解除并重新加载页面(F5 或 ctrl + R)。
  3. 选择"图像"以缩短列表。

在列表中,您将找到加载的图像。如果您更改屏幕尺寸并重新加载,您将在结果中看到更改。

据我所知,目前这是不可能的。我提出了一个用例/功能请求("3.10 管理断点之间的源交换"),以获得与 RICG 几乎相同的内容。所以我希望它仍在筹备中。但不幸的是,目前无法访问它。