2016-05-10 25 views
-2

如何使用javascript在頭部注入標籤。使用javascript/jQuery在<head>內注入標籤

<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> 
+1

noscript只有在JS被禁用時纔可見 – Oriol

回答

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); 
2

追加一個noscript標籤使用JavaScript是沒有意義任何。

另外,在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);