javascript - Firefox 扩展和 XUL : get page source code

标签 javascript xul firefox-addon innerhtml

我正在开发我的第一个 Firefox 扩展,为此我需要获得当前页面的完整源代码。我如何使用 XUL 做到这一点?

最佳答案

你需要一个 xul browser将内容加载到的对象。

将页面的“view-source:”版本加载到浏览器对象中,其方式与“View Page Source”菜单相同。请参阅 chrome://global/content/viewSource.js 中的函数 viewSource()。该函数可以从缓存中加载,也可以不加载。

内容加载后,原始来源由:

var source = browser.contentDocument.getElementById('viewsource').textContent;

序列化 DOM 文档
此方法不会得到原始出处,但可能对某些读者有用。

您可以将文档对象序列化为字符串。参见 Serializing DOM trees to strings在 MDC 中。您可能需要在扩展中使用替代的实例化方法。

那篇文章讨论的是 XML 文档,但它也适用于任何 HTML DOMDocument。

var serializer = new XMLSerializer();
var source = serializer.serializeToString(document);

这甚至适用于网页或 Firebug 控制台。

关于javascript - Firefox 扩展和 XUL : get page source code,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2337889/

相关文章:

javascript - 从 Firefox 扩展打开当前选项卡/窗口中的 URL

javascript - 转换为引导 : Notification undefined

javascript - 按键事件监听器在 Mozilla SDK 中不起作用

javascript - 显示应用于一处多个图表的过滤器

javascript - 如何对年份进行分组并减少对象?

javascript - 绑定(bind)数组.push

javascript - XUL 按钮没有出现

javascript - 获取选中复选框的 href 值?

javascript - 在 Firefox 插件中捕获复制事件

javascript - 当我们点击页面上的任意位置时,Angularjs 会获取事件吗?