IFRAME 中的 HTMLElement instanceof 不是元素或对象? [英] instanceof HTMLElement in IFRAME is not Element or Object?
问题描述
通过简单的检查尝试确定 DOM 元素
isElement = SomeThing 元素的实例
适用于主文档,但不适用于 iframe 中的(所有?)节点.
示例输出(谷歌浏览器):(mdiv 是主文档中的 DIV,idiv 是 iframe 中的 DIV)
OMGWTFok: mdiv instanceof Element ... true ... [object HTMLDivElement]ok: mdiv instanceof Object ... true ... [object HTMLDivElement]ko: idiv instanceof Element ... false ... [object HTMLDivElement]KO : idiv instanceof Object ... false ... [object HTMLDivElement]
主文档和 iframe 文档有不同的 javascript 实现???
请解释一下有什么问题.
示例:(http://www.sbmintegral.sk/GITHUB/OMGWTF/obalka.xhtml)
代码:obalka.xhtml(主文档)
<身体><div id="auto_filled_commands_container">主 div id="auto_filled_commands_container"<br/><iframe id="auto_filled_commands_iframe" src='dopis.xhtml' style="width:98%;height:98%;"/>
<div><textarea id="OMGWTF" style="width:700px;height:200px">mdiv = document.getElementById("auto_filled_commands_container");ifram = document.getElementById("auto_filled_commands_iframe");idiv = ifram.contentDocument.getElementById('auto_filled_commands');OMGWTF = "OMGWTF "+"ok: mdiv instanceof Element ... "+(mdiv instanceof Element)+" ... "+mdiv+" "+"ok: mdiv instanceof Object ... "+(mdiv instanceof Object)+" ... "+mdiv+" "+"ko: idiv instanceof Element ... "+(idiv instanceof Element)+" ... "+idiv+" "+"KO : idiv instanceof Object ... "+(idiv instanceof Object)+" ... "+idiv+" ";document.getElementById('result_txta').value = OMGWTF;</textarea><br/><input type="button" value="上部文本区域中的评估代码(绕过可能的开发人员工具错误)" onclick="eval(document.getElementById('OMGWTF').value);"/><b>(2.)</b><br/><textarea id="result_txta" style="width:700px;height:100px"></textarea>