Javascript html图像标记会在head标记中执行吗

Javascript html图像标记会在head标记中执行吗,javascript,html,Javascript,Html,所以,一家线索追踪公司需要一个链接到fire,它就在head tag中……它会被炒吗 <head> <img width=1 height=1 src='http://track.searchignite.com/si/CM/Tracking/TransactionTracking.aspx?siclientid=4426&DetailDescription=935626&transactionamount=1&SICustTransType=1

所以,一家线索追踪公司需要一个链接到fire,它就在head tag中……它会被炒吗

<head>
    <img width=1 height=1 src='http://track.searchignite.com/si/CM/Tracking/TransactionTracking.aspx?siclientid=4426&DetailDescription=935626&transactionamount=1&SICustTransType=19172&jscript=0&x10=goog&x9=1&x8=935626&x7=777+665-9999&x6=jones&x5=matt&x4=&x3=Camarillo&x2=Oxnard%2C+CA+Metro+Area&x1=Hidden+Springs&n1=Austin--Bedroom--austin_1_bedroom_apartments-P'>
</head>


是。我在FireFox和Chrome上进行了测试,它是被要求的。

不应该。说明书上说:

用户代理通常不会呈现 在头部显示为 内容

但是浏览器可以做任何他们想做的事情

增加:

这是规范中的一个松散区域。例如,浏览器可能:

  • 渲染元素
  • 忽略元素
  • 从其服务器加载图像,但不渲染图像
  • 还是别的什么
。。。而且浏览器将是兼容的


因此,请查看您喜爱的浏览器的功能,然后根据您的意愿使用这些信息。

Web浏览器确实会加载图像。我怀疑它在文档的
标题中的位置是因为
src
属性没有加载实际的图像,因此它在网页本身中会显示为一个损坏的图像。由于它位于
标题中
,因此将调用它,但不会在页面上呈现


实际上,这就像一个异步脚本调用,因为浏览器将在加载页面时对该图像的src属性的URL执行GET请求。

这取决于浏览器。代码是不正确的,对于如何处理不正确的代码没有标准,所以每个浏览器都有责任去理解它

我认为大多数浏览器都会切换到标记模式,并尽可能显示任何内容,但有些浏览器可能会忽略图像


还有一个问题是错误的代码对页面的其余部分做了什么。如果浏览器更改了代码的解析方式,则可能会对正确的代码产生负面影响。

大多数浏览器不关心规则,因此它可以正常工作。但是如果你想符合标准,你不应该这样做。(至少在XHTML中,在
中放置
标记是无效的)

技术上是。。但是把它放在一个HTML/JS调用中要好得多

HTML

<body onload="triggerLink('4426');">

您还可以向“tiggerLink”函数添加变量以传递其余URL参数。

我建议使用
标记而不是
标记。那么毫无疑问浏览器是否会请求url。只需确保它不会返回任何可能导致脚本错误的内容。

我更倾向于使用to并将其指定为样式表:


如果
TransactionTracking.aspx
返回空内容,则一切正常。

是的,浏览器将尝试加载img资源,但原因并不明显

假设这是text/html,当浏览器的解析器看到
元素时,它会认为它遇到了可显示的内容,并简单地推断
标记(记住,它们在html中是可选的),因此
实际上不在head元素中,而是在body元素中

如果您使用firebug或其他检查DOM的方法,例如,您可以自己看到这种情况


由于img位于主体中,浏览器不会将其视为与任何正常的
元素不同。

大多数现代浏览器会将头部和主体向上移动,以便在主体内留下任何可见内容。(您可以在inspector中看到这一点)。
它看起来非常可靠,至少可以加载,谷歌将它用作noscript标签中的像素跟踪系统,如果javascript不受支持,所有这些都放在头部(他们建议将整个代码和脚本一起放在头部)。

我将设置
style=“display:none”,而不是设置
width=1 height=1
以防止渲染和影响布局

所有浏览器都会请求标题中的图像,即使使用
显示:无

我查过了:

  • 艾奇女士:13
  • IE:8、9、10和11
  • 狩猎:9和6
  • FF:25、47和49
  • 铬:51

为了精确起见。。。HTML不会执行,它会被解释。NB:Hacky Hacky Hacky Hacky但是您希望在关闭JS的情况下跟踪用户
function triggerLink(var1){
    var receiveReq = getXmlHttpRequestObjectShipping();
    var url= 'http://track.searchignite.com/si/CM/Tracking/TransactionTracking.aspx?siclientid=' + var1;

    if (receiveReq.readyState == 4 || receiveReq.readyState == 0) {
        receiveReq.open("POST", url, true);
        receiveReq.onreadystatechange = handleLink; 
        receiveReq.send(null);
    }
}
function handleLink(){
    //Do This when request finished
}