我正在为Safari创建一个扩展,需要在此内容的特定位置使用innerHTML
对活动标签的内容进行一些更改。
但是为了制作这个,在检索包括所有标签和文本在内的所有html内容之前是必要的。
我有一个Chrome扩展程序,下面的功能非常好用!但在Safari浏览器中不起作用: - (
这适用于谷歌浏览器,但不适用于Safari:
这适用于Google Chrome,但不适用于Safari:
function DOMtoString(document_root) {
var html = '',
node = document_root.firstChild;
while (node) {
switch (node.nodeType) {
case Node.ELEMENT_NODE:
html += node.outerHTML;
break;
case Node.TEXT_NODE:
html += node.nodeValue;
break;
case Node.CDATA_SECTION_NODE:
html += '<![CDATA[' + node.nodeValue + ']]>';
break;
case Node.COMMENT_NODE:
html += '<!--' + node.nodeValue + '-->';
break;
case Node.DOCUMENT_TYPE_NODE:
// (X)HTML documents are identified by public identifiers
html += "<!DOCTYPE " + node.name + (node.publicId ? ' PUBLIC "' + node.publicId + '"' : '') + (!node.publicId && node.systemId ? ' SYSTEM' : '') + (node.systemId ? ' "' + node.systemId + '"' : '') + '>\n';
break;
}
node = node.nextSibling;
}
return html;
}
所以,有人知道如何通过扩展程序在Safari上同样思考(获取完整的html源代码)吗?