使用javascript / jQuery在另一个标签内注入标签

时间:2016-05-10 12:37:56

标签: javascript jquery html head noscript

如何使用javascript在头部注入标记。

<noscript>
     <img height="1" width="1" style="display:none"
        src="https://www.facebook.com/tr?id=801318466672120&ev=PageView&noscript=1"
        /></noscript>

我试过

var nonscript = document.createElement('noscript');
    nonscript.innerHTML = "<img height='1' width='1' style='display:none' src='https://www.facebook.com/tr?id=801318466672120&ev=PageView&noscript=1'/>";
    head.appendChild(nonscript);

但它就像

<noscript>
    "<img height="1" width="1" style="display:none"
        src="https://www.facebook.com/tr id=801318466672120&ev=PageView&noscript=1"
        />" </noscript>

2 个答案:

答案 0 :(得分:2)

您可以使用以下代码:

var nonscript = document.createElement('noscript');
var img = document.createElement("img");
img.height = 1;
img.width = 1;
img.style.display = "none";
img.src = "https://www.facebook.com/trid=801318466672120&ev=PageView&noscript=1"
nonscript.appendChild(img);
document.head.appendChild(nonscript);

答案 1 :(得分:2)

使用javascript追加noscript标记毫无意义。

此外,在head中使用时,noscript代码不能包含img

  

允许的内容:禁用脚本时和禁用脚本时   <head>元素的后代:按任意顺序,零或更多<link>   元素零个或多个<style>元素零个或多个<meta>   元素即可。禁用脚本时以及不是脚本的后代时   <head>元素:任何透明内容,但没有<noscript>元素   必须是其后代之一。否则:流量内容或措辞   内容。

Source

但如果你坚持:

您需要创建一个img元素并将其附加到noscript元素。然后,您可以将它们附加到head

var nonscript = document.createElement('noscript');
var img = document.createElement('img');
var head = document.getElementsByTagName('head')[0];

img.width = "0";
img.height = "0";
img.style.display = "none";
img.src = "https://www.facebook.com/tr?id=801318466672120&ev=PageView&noscript=1";

nonscript.appendChild(img);
head.appendChild(nonscript);
相关问题