博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
2014-10-28——iframe多层嵌套时获取元素总结
阅读量:4983 次
发布时间:2019-06-12

本文共 1491 字,大约阅读时间需要 4 分钟。

同域:

父页面获取子页面元素:
注意:onload事件
jQuery获取:
$("iframe").contents().find("holder")......;
(嵌套三层,或者更多时)
$('iframe').contents().find('iframe').contents().find("iframe")......
js获取:
window.frames["holder"].contentWindow.document 或者 window.frames[0].contentWindow.document(不推荐)
(嵌套三层,或者更多时)
window.frames[0].contentWindow.window.frames[0](......).contentWindow.document
补充拓展:(仅供参考)
document.frames 与 window.frames 之间的区别
document.frames 只有IE、Opera 支持,等同于 window.frames。用来取得当前页面内 window 对象的集合。
在 Firefox、Chorome、Safari中使用 document.frames 不能获取到 FRAME 元素
window.frames['myframe'] 代替 document.frames('myframe')或document.frames['myframe']。
注意:window.frames只可写成window.frames['myframe']不能写成window.frames('myframe')
子页面获取父页面元素:
1、子页面获取iframe父页面的DOM
jQuery获取:
$("#holder",parent.document)
js获取:
parent.document.getElementById("holder")  
2、子页面获取父页面里的其他iframe子页面里的DOM
jQuery获取:
$("#holder",window.parent.frames["holder"].document)
js获取:
window.parent.frames["holder"].document.getElementById("holder")
补充拓展:(仅供参考)
opener 与 parent 之间的区别
opener:
opener用于在window.open的页面引用执行该window.open方法的的页面的对象。例如:A页面通过window.open()方法弹出了B页面,在B页面中就可以通过opener来引用
A页面,这样就可以通过这个对象来对A页面进行操作。
parent:
parent用于iframe,frame中生成的子页面中访问父页面的对象。例如:A页面中有一个iframe或frame,那么iframe或frame中的页面就可以通过parent对象来引用A页面
中的对象。这样就可以获取或返回值到A页面中。
总结:
parent指父窗口,在FRAMESET中,FRAME的PARENT就是FRAMESET窗口。
opener指用WINDOW.OPEN等方式创建的新窗口对应的原窗口。
parent是相对于框架来说父窗口对象。
opener是针对于用window.open打开的窗口来说的父窗口,前提是window.open打开的才有。
跨域:

转载于:https://www.cnblogs.com/bugong/p/4057158.html

你可能感兴趣的文章
Apache启动失败(Windows 无法在本地计算机启动Apache2.2)
查看>>
Git 使用笔记
查看>>
iOS dom解析xml格式数据
查看>>
SDUT Problem_5 二哥的狗(水题)
查看>>
如何利用RMAN Debug和10046 Trace来诊断RMAN问题?
查看>>
Android性能优化
查看>>
USACO CONTEST 2002 SPRING 绿组.一进制奶牛[ucc]
查看>>
微信公众平台生成带参数二维码
查看>>
【spring boot】SpringBoot初学(2) - properties配置和读取
查看>>
ECSHOP info: Can't pConnect MySQL Server(localhost:3306)!
查看>>
设计模式(十二):通过ATM取款机来认识“状态模式”(State Pattern)
查看>>
Application_Start和Application_End事件执行时间
查看>>
获取表格中的值
查看>>
Implement Trie (Prefix Tree)
查看>>
Island Perimeter
查看>>
学习进度(13)
查看>>
nyoj--586--疯牛(二分&&枚举)
查看>>
spring启动流程
查看>>
UITableViewController的子控件不随着滑动
查看>>
将博客搬至CSDN
查看>>