2009-06-01 65 views
0

在firefox擴展中使用Javascript,我打開了一個新標籤頁。我不知道如何在此選項卡中寫入鏈接到www.google.com和其他鏈接(整個列表),用戶可以單擊鏈接並打開此頁面。Javascript - 寫入新標籤的鏈接

謝謝您的幫助

到目前爲止,我已鍵入:

var newTabBrowser2 = gBrowser.getBrowserForTab(gBrowser.selectedTab = gBrowser.addTab()); 

不幸的是,這將不起作用:

var newTabBrowser2 = gBrowser.getBrowserForTab(gBrowser.selectedTab = gBrowser.addTab()); 
newdocument=newTabBrowser2.contentDocument.documentElement.textContent; 
newdocument.write("<a href=\"http://www.google.com\">google</a><br>"); 
newdocument.write("<a href=\"http://www.yahoo.com\">yahoo</a><br>"); 

,我已經試過這樣:

var newTabBrowser2 = gBrowser.getBrowserForTab(gBrowser.selectedTab = gBrowser.addTab()); 
newTabBrowser2.contentDocument.documentElement.innerHTML += "<a 

href = \「http://www.google.com \「> google
」;

但只有當我使用調試器時纔有效

任何想法爲什麼?

謝謝

回答

0

這看起來像你正在尋找的東西。

http://mesh.typepad.com/blog/2004/11/creating_a_new_.html

var myUrl = "http://mesh.typepad.com"; 
var tBrowser = document.getElementById("content"); 
var tab = tBrowser.addTab(myUrl); 

這將創建一個新的標籤每次的運行時間 - 您可以更新預先存在的標籤像這樣的網址:

var uri = "http://mesh.typepad.com"; 
tBrowser.getBrowserForTab(tab).loadURI(uri); 

最後,你應該能夠將焦點設置爲新選項卡:

tBrowser.selectedTab = tab; 
+0

感謝您的回覆 我更關心的是在選項卡上顯示整個鏈接列表,用戶選擇其中的一個 – Lilz 2009-06-01 12:05:57

1

從您的問題中得知您的要求並不十分清楚。可能是這樣的:

newwindow=window.open(); 
newdocument=newwindow.document; 
newdocument.write("<a href=\"http://www.google.com\">google</a><br>"); 
newdocument.write("<a href=\"http://www.yahoo.com\">yahoo</a><br>"); 
newdocument.close(); 

???

1

我不相信你可以使用textContent將HTML內容添加到文檔 - 你最好使用DOM來構造HTML。

如何像這樣(未經):

var newTabBrowser2 = gBrowser.getBrowserForTab(gBrowser.selectedTab = gBrowser.addTab()); 
newdocument=newTabBrowser2.contentDocument.documentElement; 

var link=newdocument.createElement("a"); 
link.setAttribute("href", "http://www.google.com"); 
link.textContent="google"; 
newdocument.appendChild(link); 

newdocument.appendChild(newdocument.createElement("br")); 

link=newdocument.createElement("a"); 
link.setAttribute("href", "http://www.yahoo.com"); 
link.textContent="yahoo"; 
newdocument.appendChild(link); 

newdocument.appendChild(newdocument.createElement("br")); 

或者,也可以可能只寫文檔元素的innerHTML。