更改Firefox扩展“ fly”中HTML页面的内容

|| 当用户单击Firefox工具栏上的按钮时,我需要更改内容 当前活动的html页面的大小。在标准实现中,它看起来像这样:
function injectNewContent() {

 var pageHtml =
            [
                \"<html>\",
                \"<head>\",
                \"</head>\",
                \"<frameset cols=\'270,*\' frameborder=\'0\'>\",
                \"<frame name=\'frameI\' src=\'http://www.123.com/default.html\'>\",
                \"<frame name=\'frameII\' src=\'\" + document.location + \"\'>\",
                \"<noframes>\",
                \"<body>\", 
                \"noframes\",
                \"</body>\",
                \"</noframes>\",
                \"</frameset>\",
                \"</html>\"
            ];

 var fullPageHtml = \"\";

 for (var i in pageHtml)
 {
     fullPageHtml += pageHtml[i];
 }

 window.document.write(fullPageHtml);
}
我需要在此代码中进行哪些更改才能获得相同的功能?
 var windowMediator = Components.classes[\'@mozilla.org/appshell/window-mediator;1\'].
                      getService(Components.interfaces.nsIWindowMediator);
 var recentWindow = windowMediator.getMostRecentWindow(\"navigator:browser\");

 recentWindow. ???
还是我做错了什么? 谢谢你的帮助...     
已邀请:
您不需要去寻找浏览器窗口,您的按钮已经位于一个窗口上了。要访问当前选项卡的内容区域,只需使用
window.content
。这应该做您想要的:
var doc = window.content.document;
doc.open(\"text/html\", true);
doc.write(fullPageHtml);
doc.close();
虽然我个人更愿意将HTML代码分配给
doc.documentElement.innerHTML
。     

要回复问题请先登录注册