来自iframe的getElementById

Phi*_*son 7 javascript

有人可以帮助我理解为什么会出现这种错误

document.getElementById("actContentToGet").contentWindow.document.body.getElementById不是函数

function deleteElement(element){
        var elementID = $(element).attr("class");
        alert(elementID);
        document.getElementById('actContentToGet').contentWindow.document.body.getElementById(elementID).remove;
        alterContent();
        giveAllIDs();
        hoverLoad();
    }
Run Code Online (Sandbox Code Playgroud)

nic*_*ckf 18

尝试改变这个:

...contentWindow.document.body.getElementById(elementID)...
Run Code Online (Sandbox Code Playgroud)

对此:

...contentWindow.document.getElementById(elementID)...
Run Code Online (Sandbox Code Playgroud)

从评论中编辑:它不会删除该元素,因为这不是删除元素的方式.试试这个:

var iframe = document.getElementById('actContentToGet');
var frameDoc = iframe.contentDocument || iframe.contentWindow.document;
var el = frameDoc.getElementById(elementID);
el.parentNode.removeChild(el);
Run Code Online (Sandbox Code Playgroud)

请参阅此处文档.