我尝试过使用innerHTML但它返回null。 这是我的代码:
var sumScripts = gBrowser.contentDocument.getElementsByTagName("script");
for (i = 0; i < sumScripts.length; i++) {
var content = sumScripts[i].innerHTML;
alert(content);
所以我试图在网页上获取所有脚本并打印它们,但每次都打印为null。有谁知道什么是错的?顺便说一下,这是XUL JavaScript。
编辑:傻我。我修复了迭代器错字(将0更改为i),谢谢。它现在有效。答案 0 :(得分:1)
在FF addon priveleaged范围内,您可以使用它。
您可以访问Document.scripts
。在MDN上阅读它:
https://developer.mozilla.org/en-US/docs/Web/API/Document
但这也适用于非priveagled。只需window.document.scripts
和itterate。
var scripts = gBrowser.contentWindow.document.scripts;
for (var i=0; i<scripts.length; i++) {
console.log(i, scripts[i].src, scripts[i].innerHTML)
}
请记住,一些脚本元素设置了src=blah
,因此它们不会有innerHTML。你必须通过实时获取(xmlhttprequest等)或缓存值来获得它。