我有一个动态创建的iframe元素。如果我不确定html中是否有正文标记,我应该在哪里添加这个iframe?我想把它作为像div这样的html标签的子项追加,我也必须动态创建它。但我需要在某处附加div。我再也不确定在哪附加div。
答案 0 :(得分:0)
您必须将其插入正文标记中。因此,如果没有正文标记,只需在head元素后插入body标记,在body标记中插入iframe标记。
答案 1 :(得分:0)
我想你必须这样做。
检查body
是否存在,如果不存在则创建它。
var dom = document.implementation.createDocument('http://www.w3.org/1999/xhtml', 'html', null);
if(!document.body)
{
var body = dom.createElement("body");
body.innerHTML = "<iframe></iframe>";
dom.firstChild.appendChild(body);
}
else
{
document.body.innerHTML = "<iframe></iframe>";
}
答案 2 :(得分:0)
您的问题似乎是询问如何容纳非标准HTML文档。如果您绝对必须,并且不能坚持文档提供者使其文档符合标准,我会检查body
标记,如果存在,则附加到该标记。如果不可用,我会测试html
元素并附加到该元素。除此之外,在这方面,我拒绝为另一方服务。
if (document.getElementsByTagName('body')) {
...
} else if {document.getElementsByTagName('html')) {
...
} else {
console.log("We're sorry, but your document is poorly constructed
and we won't be serving you today.");
}