谈谈contentWindow 和contentDocument以及 iframe
1,contentWindow:是用来获取子窗口的window对象的,它兼容各大浏览器,用法如下
document.getElementById("iframeId").contentWindow
这样简单的一句就得到了iframe包含页面的window对象;
2,contentDocument:是用来获取子窗口的document对象的,主流浏览器都支持和ie8+支持,用法如下
document.getElementById("iframeId").contentDocument
这样简单的一句就得到了iframe包含页面的document对象;
以上两种方法是在父窗口中获取到子窗口,既然我们都能拿到子窗口window对象和document对象了,那么子窗口内其他的操作就easy了 !
如果要通过子窗口A访问到同级的子窗口B,那么我们可以在子窗口A中这么来做:
parent.getElementById("iframeId").contentWindow.document.getElmentById("frameId_B") 或者
parent.getElementById("iframeId").contentDocument.getElmentById("frameId_B")
就得到B窗口了。
parent.document.getElementById('iframe id').contentWindow.history.back();
来优雅的实现
开心一刻:
谈谈contentWindow 和contentDocument以及 iframe的更多相关文章
- contentWindow 和contentDocument区别 及iframe访问
a>contentWindow 兼容各个浏览器,可取得子窗口的 window 对象. b>contentDocument Firefox 支持,> ie8 的ie支持.可取得子窗口的 ...
- iframe.contentWindow 属性:关于contentWindow和contentDocument区分
定义和用法 contentDocument 属性能够以 HTML 对象来返回 iframe 中的文档,可以通过所有标准的 DOM 方法来处理被返回的对象. 语法:frameObject.content ...
- 各浏览器Iframe对contentWindow、contentDocument、document及frames属性测试
Iframe易于嵌套及管理页面,但经常遇到跨域.父子页面访问问题,对于子页面访问父页面可以兼容性地通过window.Top或window.Parent或window.frameElement等操作,但 ...
- javascript 中contentWindow和 frames和iframe之间通信
iframe父子兄弟之间通过jquery传值(contentWindow && parent),iframe的调用包括以下几个方面:(调用包含html dom,js全局变量,js方法) ...
- iframe.contentWindow介绍
一.在使用iframe的页面,要操作这个iframe里面的DOM元素可以用: contentWindow.contentDocument(测试的时候chrome浏览器,要在服务器环境下) 1.先获取i ...
- iFrame 功能详解
目录索引: 一. 简介二. 属性三. 功能四. 应用 一.简介 网页“帧”的概念最早是由Netscape所提出,当时全部由“帧”构成的页面,也被称之为 “框架集”页面,在一个“框架集”页面中,“帧” ...
- 关于iframe
iframe一般用来嵌套其他页面来使用 1.如何使用? <iframe id="iframe1" src="2.html" frameborder=&qu ...
- iframe高度自适应
前两天在网上看到了一道面试题,问iframe高度自适应的问题.发现自己之前几乎没有关注过iframe的问题,所以在这里记录一下. 原题目是: 页面A的域名是:http://www.taobao.com ...
- javascript获取iframe框架中页面document对象,获取子页面里面的内容,iframe获取父页面的元素,
javascript获取iframe框架中,加载的页面document对象 因为浏览器安全限制,对跨域访问的页面,其document对象无法读取.设置属性 function getDocument(i ...
随机推荐
- 关于 SimpleDateFormat 的非线程安全问题及其解决方案
一直以来都是直接用SimpleDateFormat开发的,没想着考虑线程安全的问题,特记录下来(摘抄的): 1.问题: 先来看一段可能引起错误的代码: package test.date; impor ...
- PostgreSQL恢复误操作
根据德歌的博客自己实践一下: 找到要恢复的前一个事物ID,然后回滚到那个时候: 使用pg_xlogdump分析XLOG -bash-4.1$ pg_xlogdump 00000002000000000 ...
- Android Afinal框架学习(一) FinalDb 数据库操作
框架地址:https://github.com/yangfuhai/afinal 对应源码: net.tsz.afinal.annotation.sqlite.* net.tsz.afinal.db. ...
- 随想录(skyeye中的soc仿真)
[ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 想学好soc,再怎么看芯片手册和linux kernel都不为过.但是要学习好kernel,那再 ...
- 第1章 Flex介绍
* Flex Flex 是一个高效.免费的开源框架,可用于构建具有表现力的 Web应用程序,这些应用程序利用Adobe Flash Player和Adobe AIR, 可以实现跨浏览器.桌面和操作系统 ...
- Java进阶知识点5:服务端高并发的基石 - NIO与Reactor模式以及AIO与Proactor模式
一.背景 要提升服务器的并发处理能力,通常有两大方向的思路. 1.系统架构层面.比如负载均衡.多级缓存.单元化部署等等. 2.单节点优化层面.比如修复代码级别的性能Bug.JVM参数调优.IO优化等等 ...
- 深入学习Heritrix---解析Frontier(链接工厂)(转)
深入学习Heritrix---解析Frontier(链接工厂) Frontier是Heritrix最核心的组成部分之一,也是最复杂的组成部分.它主要功能是为处理链接的线程提供URL,并负责链接处理完成 ...
- HDU - 3949 :XOR(线性基,所有集合的不同异或和中,求从小到大第K个)
XOR is a kind of bit operator, we define that as follow: for two binary base number A and B, let C=A ...
- RabbitMQ学习系列四-EasyNetQ文档跟进式学习与实践
EasyNetQ文档跟进式学习与实践 https://www.cnblogs.com/DjlNet/p/7603554.html 这里可能有人要问了,为什么不使用官方的nuget包呐:RabbitMQ ...
- C++多态技术
转自: http://blog.sciencenet.cn/blog-58025-691458.html 摘要 本文介绍了C++中的各种多态性,重点阐述了面向对象的动态多态和基于模板的静态多态, ...