innerHTML无法在节点

时间:2015-07-09 16:38:59

标签: javascript dom

在我的脚本node1.data& node1.textContent工作正常但node1.innerHTML没有显示任何内容,我不明白为什么。

var text = [];
function getN(node1) {
    textNodesUnder(node1, text);
    return text.join("");
}
function textNodesUnder(node1, text) {
    if (node1.nodeType == 3) {
        text.push(node1.innerHTML);
        document.write(node1.textContent + "<br>");
    }
    var children = node1.childNodes;
    for (var i = 0; i < children.length; i++) {
        textNodesUnder(children[i], text);
    }
}

<body onload="alert('The document content is ' + getN(document))" >

3 个答案:

答案 0 :(得分:1)

此时node1是对document对象的引用。哪个确实没有innerHTML属性

答案 1 :(得分:0)

尝试document.body.innerHTML因为它会给出具有内部HTML元素的元素

答案 2 :(得分:0)

Element.innerHTML属性设置或获取描述元素后代的HTML语法。 示例

document.getElementById("some_element").innerHTML="JavaScript"; //innerHTML is property of element not document

MDN - innerHTML

有关JavaScript-innerHTML

的有用信息