uuorz 发表于 2024-2-9 20:41:15

新人求教,如何在复杂的iframe嵌套中获取父元素

> 最近心血来潮,想做一个适配所有页面video的脚本扩展,在网页全屏时,遇到一点问题。在某些视频页面有比较复杂的iframe嵌套,而css代码只能在相应的iframe里面生效,想要实现网页全屏效果,需要给当前iframe的所有父元素修改样式,因此想请教一下跨域的情况下,如何获取当前iframe的父元素呢。如图:


!(data/attachment/forum/202402/09/202831bnd3d3p4e3zn3epq.png)


当然也可以通过监听鼠标移入。然后修改当前video所有父元素的样式,但是频繁监听鼠标移入移出,可能性能消耗比较大,想请教一下大佬们,有没有其他更优雅的方式实现呢

李恒道 发表于 2024-2-11 01:41:06

我觉得可能可以通过postmessage相互沟通...
但是更具体的想法没有
感觉确实很复杂...

cxxjackie 发表于 2024-2-12 22:50:15

https://bbs.tampermonkey.net.cn/thread-2895-1-1.html
iframe向window.parent发消息,父级收到消息后,先获取所有iframe,再比对iframe.contentWindow与e.source是否相同即可。

uuorz 发表于 2024-2-13 22:49:05

cxxjackie 发表于 2024-2-12 22:50
https://bbs.tampermonkey.net.cn/thread-2895-1-1.html
iframe向window.parent发消息,父级收到消息后,先 ...

ggnb!!!
页: [1]
查看完整版本: 新人求教,如何在复杂的iframe嵌套中获取父元素