2009-06-01 62 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。