gpt4 book ai didi

JavaScript 删除动态创建的 iframe 时遇到问题

转载 作者:行者123 更新时间:2023-11-28 18:29:08 24 4
gpt4 key购买 nike

我无法在调用函数时删除预先创建的 iframe。我设置了visibility:visible,这样我就可以看到发生了什么,并且每次新调用该函数时,新创建的 iframe 都会彼此堆叠在一起。

顺便说一句,“iframe”实际上是动态创建的 iframe 中的 id。所以 document.getElementById('iframe') 是正确的。

代码:

    if( document.getElementById(iframe) ){
var e = document.getElementById("iframe");
e.removeChild(document.getElementById("iframe"));
}
var iframe = document.createElement("iframe");
iframe.setAttribute("id","iframe");
iframe.setAttribute("class","iframe");
document.getElementById("output").appendChild(iframe);
$("#iframe").attr("display","block");
$("#iframe").attr("src",url);

...我也尝试过:

if( typeof document.getElementById(iframe) !== "undefined" ){
var e = document.getElementById("iframe");
e.removeChild(document.getElementById("iframe")); // e is null error here
}

...但这会导致“e is null 错误...以及

if( ! typeof document.getElementById(iframe) == "undefined" ){
var e = document.getElementById("iframe");
e.removeChild(document.getElementById("iframe"));
}

...没有错误,但 iframe 也没有被删除。

最佳答案

这个:

if( document.getElementById(iframe) ){
var e = document.getElementById("iframe");
e.removeChild(document.getElementById("iframe"));
}

应该改为:

if( document.getElementById("iframe") ){
document.getElementById("iframe").remove();
}

关于JavaScript 删除动态创建的 iframe 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38482550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com