6

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

<img src="image.jpg"/>

在地址栏中或直接通过以下方式链接到:

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

谢谢。

4

2 回答 2

5

不,一般来说不是。

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

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

可以查询日志以查看请求是否完全独立,或者对 HTML 页面(可能还有其他资源)的请求是否在同一时间完成。这不是万无一失的(想想我们在网络上拥有的多层次缓存)。

于 2012-08-31T15:35:34.100 回答
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 参数,而不会给用户带来任何副作用或陷阱。

于 2012-09-01T12:51:58.407 回答