在onclick事件中,"(new Image()).src"的作用是什么?

4
这是IMDb网站角落主标志的HTML代码。
<a onclick="(new Image()).src='/rg/home/navbar/images/b.gif?link=%2F%3Fref_%3Dnv_home';" href="/?ref_=nv_home" id="home_img" class="navbarSprite home" title="Home"></a>

我不理解onclick事件。它是在做什么?我看不懂为什么要将图像实例化作为图像的onclick事件。

创建一个新的Image对象并为其分配一个src是一种发出HTTP请求的方式,而不会发生其他任何事情(尽管如果他们以另一种方式抑制了真实链接目标,这里将跟随真实链接目标)- 如果您愿意,您可以称其为“穷人版的AJAX”。它将从服务器请求图像(或其他任何内容),同时传输link参数的值 - 用于某种跟踪或其他用途。 - CBroe
1个回答

8

这是一种跟踪点击的方式。虽然它生成一个图像,但唯一的目的是向跟踪URL发出简单的外部请求以记录点击(该图像永远不会在页面上显示)。b.gif其实并不是一个GIF文件,而是一个服务器端的跟踪脚本。


哦,当然,我本来就可以猜到。回过头来看,似乎很明显。我只是从未见过跟踪点击的源代码实际上是一个 .gif 文件。我的意思是,我知道它并不真正是一个 .gif 文件,请求会被重定向到一个 .php 文件或其他什么东西,但我更习惯于一开始就将其发送到一个 .php 文件。 - temporary_user_name

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接