清除IE10中的innerHTML问题

时间:2015-02-16 07:48:10

标签: javascript internet-explorer-10

这是我的功能:

    swPageProt.showContent = function () {
        if (this._Parent) {
            var container = this._Parent.getContentNode();
            if (container) {
                console.log(this._Content.innerHTML);
                console.log(this._Parent.getContentNode().innerHTML);
                container.innerHTML = '';
                if (this._Content instanceof WT.BaseControl) {
                    this._Content.addToNode(container);
                }
                else if (this._Content.tagName) {
                    console.log(this._Content.innerHTML);
                    console.log(this._Parent.getContentNode().innerHTML);
                    container.appendChild(this._Content);
                }
                else {
                    container.innerHTML = this._Content + '' || '';
                }
            }
        }
    };

我想清除父容器并向其添加this._Content。这在Chrome和Firefox中运行良好,但行container.innerHTML = '';清除了IE10中的父实例和this实例。而且我总是得到空父容器(this)内容。如何在IE10中修复它?

1 个答案:

答案 0 :(得分:0)

找到解决方案! 有必要使用container.removeChild(container.firstChild);代替container.innerHTML = '';