是否可以通过以下方式检测图像是否已加载:
<img src="image.jpg"/>
与地址栏对比或直接通过以下方式链接:
<a href="image.jpg">Image</a>
感谢。
答案 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参数,而不会给用户带来任何副作用或陷阱。