记一次与iframe之间的抗争】的更多相关文章

iframe这个标签之前了解过这个东西,知道它可以引入外来的网页,但是实际开发中没有用到过.这一次有一个需求是说准备要在网页中嵌套另外一个网站,用iframe这个标签,让我测试一下这个可不可以在自己的网页中对引入进来的iframe框架进行操作,操作dom和css的一些东西.让我做出一个小案例看看可不可以,我信誓旦旦保证说可以的,我试过!!! 就这样交代给我之后信心满满的就开始了我的验证. 什么是同源? 同域名. 同端口. 同协议   网上是有好多这个的解释的,给出一张图片. 看下面这张图片. 引…
主页面.iframe之间的调用和传值,无非就是两个交互形式: 主页面与子页面的交互 子页面之间的交互 接下来要讲的是四种交互传值的方式:利用postMessage方法传值.DOM操作传值.URL方式传值.利用全局属性传值 利用postMessage方法传值 这种方式非常像事件绑定.监听.postMessage方法接收两个参数:一条消息.一个表示消息接收方来自哪个域的字符串.第二个参数对保障安全通信非常重要,可以防止浏览器把消息发送到不安全的地方. demo: /*主页面发送消息,子页面接收消息的…
1.watch.js (function ($) { $.fn.watch = function (callback) { return this.each(function () { //缓存以前的值 $.data(this, 'originVal', $(this).val()); //event $(this).on('keyup paste', function () { var originVal = $.data(this, 'originVal'); var currentVal…
案例: 打开http://mail.126.com/,定位登录输入框时,却总是定位不到元素,后来发现,登录的内容在一个iframe中. 一.由主页面切换至iframe dr.switchTo().frame(); 1.int型的参数,代表的是下标,从0开始 2.String型的参数,为name或者id 3.WebElement型的参数,用dr.findElement()方法先找到这个元素 二.iframe之间的切换 1.多层iframe切换,一层层进行切换 <html> <iframe…
下面本人来谈谈iframe之间通信问题及iframe自适应高度问题. 1. iframe通信 分为:同域通信 和 跨域通信.所谓同域通信是指 http://localhost/demo/iframe/iframeA.html 下的a.html页面嵌套 iframe 比如: <iframe src="http://localhost/demo/iframe/iframeB.html" id="iframeA" name="iframeA"&g…
iframe父子兄弟之间通过jquery传值(contentWindow && parent),iframe的调用包括以下几个方面:(调用包含html dom,js全局变量,js方法) 主页面调用iframe: iframe页面调用主页面: 主页面的包含的iframe之间相互调用: 主要知识点 1:document.getElementById("ii").contentWindow 得到iframe对象后,就可以通过contentWindow得到iframe包含页面的…
一.Window之间JS通信 在开发项目过程中,由于要引入第三方在线编辑器,所以需要另外一个窗口(window),而且要求打开的window要与原来的窗口进行js通信,那么如何实现呢? 1.在原窗口创建新打开window的一个对象: var new_window; var url = 'http:://second.com'; new_window = window.open(url, 'new_window'); 新窗口里有一个say()方法: function say() { alert('…
父窗口与iFrame之间调用方法和元素 父窗口调用子窗口: 调用元素 js格式: var obj=document.getElementById("iframe的name").contentWindow; var ifmObj=obj.document.getElementById("iframe中控件的ID"); ifmObj.click(); 实例: var obj=document.getElementById("ifm").content…
观察者设计模式又称订阅发布模式,在JS中我们习惯叫做广播模式,当多个对象监听一个通道时,只要发布者向该通道发布命令,订阅者都可以收到该命令,然后执行响应的逻辑.今天我们要实现的就是通过观察者设计模式,实现iframe之间的通信. 一.top对象 一般的JS书里都会在讲框架集的时候讲top,这会让人误解,认为top对象只是代表框架集,其实top的含义应该是说浏览器直接包含的那一个页面对象,也就是说如果你有一个页面被其他页面以iframe的方式包含了,无论包含的层级是什么,都可以用top访问最外层的…
//页面加载完成后执行 $(function () { getHW();}); //当用户改变浏览器大小改变时触发 $(window).resize(function () { setHW(); }); //每500毫秒运行一次 window.setInterval("getH()", 500); //获取页面的高度,并传给父页面的元素 function getSubPageH() { var parentWorkDiv = $("#workDiv", parent…