是否有可能通过img src =“... vs地址栏/”作为文件来检测图像是否已加载?

时间:2012-08-31 15:32:42

标签: html image http-headers detect

是否可以通过以下方式检测图像是否已加载:

<img src="image.jpg"/>

与地址栏对比或直接通过以下方式链接:

<a href="image.jpg">Image</a>

感谢。

2 个答案:

答案 0 :(得分:5)

不,一般情况下不是。

浏览器会为两者发出完全相同的请求。

当浏览器解析HTML(它得到的第一件事)时,将分别请求每个附加资源(JavaScript,CSS,图像和其他链接文件)。浏览器不会添加有关从何处获取引用的信息 - 因此无法从请求中判断它是直接在地址栏上还是在HTML页面上的引用中。

可以查询日志以查看请求是否完全独立,或者是否在同一时间对HTML页面(以及可能的其他资源)发出了请求。这不是万无一失的(想想我们在网上有多种级别的缓存)。

答案 1 :(得分:2)

有可能。
只需检查推荐人!

<img src="image.jpg"/>

推荐人将是图像之前的页面

<a href="image.jpg">Image</a>

引荐来源将是嵌入图像的页面

否则,只需添加一个GET参数。

<img src="image.jpg?src=img"/>

<a href="image.jpg?src=a">Image</a>

在使用JS的下一页或apache日志中,您将评估GET参数,而不会给用户带来任何副作用或陷阱。