如何检查iframe是否为空/ null/undefined?

5 html javascript browser iframe jquery

这不起作用:

if(document.getElementById("iframe").innerHTML==''){
Run Code Online (Sandbox Code Playgroud)

是否有安全的浏览器可靠的方法来检查iframe是否为空?

谢谢

Ale*_*lex 6

好吧,如果你可以使用jQuery,检查它的length属性.这是跨浏览器兼容的.如果它为零,则不存在.像这样的东西:

if(!$("#iframeid").length) {
    // iframe doesn't exist
}
Run Code Online (Sandbox Code Playgroud)

编辑:

看到您对您的问题的评论后:

如果您想检查iframe中是否没有加载页面,并且iframe不是跨域的,您可以检查iframe中是否存在body标记.如果它存在,那么加载的东西.

像这样的东西:

if($("#iframeid").contents().find("body").length) {
    // some html page loaded in iframe
}
Run Code Online (Sandbox Code Playgroud)

如果iframe是跨域的,则您将被同源策略阻止.否则这将有效.

  • @alex:如何跨域工作 (5认同)