有一个需求是在iframe页面调用父页面一个方法,开始我用window.parent.length来判断页面有几个层,但是不好用,因为我的浏览器安装了一个插件,这个插件会动态向页面插入一个iframe。
于是我又想到了,可不可以在iframe页面获取到自身的窗口id,这样就精准无误了。
于是看api发现了 window.frameElement 很好用,它获取到的是iframe整个标签,大赞!
判断是否在iframe里:
if (self.frameElement && self.frameElement.tagName === 'IFRAME') {}