1.首先两个页面在同一域下
例:A.HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>resize</title> <meta name="author" content="Administrator" /> <!-- Date: 2013-08-30 --> </head> <body> <div> <iframe name="test" src="B.HTML" id="test" frameborder="no" style="margin: 50px 80px 0 90px;width:90%;height: 500px;"></iframe> </div> </body> </html>
B.HTML
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" lang="en"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>resize</title> <meta name="author" content="Administrator" /> <!-- Date: 2013-08-30 --> <script> function resize() { var parentwh = parent.innerHeight; var parentww = parent.innerWidth; var parentscreenh = parent.screen.height; var parentscreenw = parent.screen.width; var gridDiv = document.getElementById("gridWropper"); var got = gridDiv.offsetTop var winh = window.innerHeight; var winw = window.innerWidth var w = winh - got; var screenX = screenLeft; var screenY = screenTop var allFrames = parent.frames; var currentWin = null; for (var i = 0; i < allFrames.length; i++) { if (allFrames[i] == window) { currentWin = allFrames[i]; } } } </script> </head> <body onresize="resize()"> <div id="gridWropper" style="height:90%;width:100%;overflow:auto;border: 2px dashed black;word-break: break-all;"></div> </body> </html>
接下来如果要在A中访问B中的方法,首先得先判断B是否加载完成,加载完成后才能访问(这个太重要了)
js
var iframe = document.getElementById("test"); if (!/*@cc_on!@*/0) { //if not IE iframe.onload = function(){ alert("Local iframe is now loaded.chrome"); alert(iframe.contentWindow.resize) }; } else { iframe.onreadystatechange = function(){ if (iframe.readyState == "complete") { alert("Local iframe is now loaded.ie"); //alert(iframe.document.getElementById("test")); alert(iframe.contentWindow.resize) } }; }
相关推荐
iframe 跨域访问session问题解决方法
实现内嵌的iframe跨域调用父页面js方法
通过HTTPClient界面在JSP中嵌入iframe子界面跨域时,无法获取跨域界面的属性值的问题
该文档介绍了vue和普通web页面中iframe实现跨域的解决方案,解决了主页面中无法调用iframe方法的问题
这是关于iframe使用过程中出现的问题整理的解决方法,关于使用iframe不用单独写接口打通数据,直接把数据通过ifarme嵌套方法传递过去,使用简单方便。
iframe 与主框架相互访问例子,包含同域访问,跨域访问例子。
以前在面试的时候经常遇到问关于跨域的事儿,所以自己对跨域有一定的概念性了解,知道什么是跨域以及解决跨域的方法,但是具体实际从来没有操作过,直到最近在公司项目中,遇到了一个需要使iframe跨域进行POST提交的...
NULL 博文链接:https://hqlly.iteye.com/blog/1662337
框架完美解决了iframe之间的跨域通讯。底层技术采用window.name转换代理实现
layer弹窗:top.layer弹窗到父页面跨域,通过postMessage方法将子页面的配置对象发送到父页面中,父页面再通过子页面的配置对象打开弹窗,对象内不能存在事件。
iframe跨域访问示例
需要将proxy.html放到与内嵌的iframe页同域的服务下, 并且可以被访问到. 使用 支持2种调用方式: 使用 postMessage 和 URL params. postMessage 该方法需要使用 JSON.stringify 将对象转为字符串. // React function...
请用google浏览器打开,页面百分比缩小到百分之三十再访问。 1、 请在服务器上部署附件war 2、 将【两个工程.zip】压缩包中的webChart.war和jdbc2json.war上传至apache-tomcat-8.0.33/webapps下 3、 启动tomcat,~/...
这个库允许的高度与同跨域iframe来适应他们所...在iframe页面链接修复和支持iFrame与父页面之间的链接。 提供自定义的大小和滚动方法。 使家长地位和视口大小的iframe。 与ViewerJS支持PDF和ODF文档。 后备支持到IE8。
iframe 跨域 自动适应高度;iframe 跨域 自动适应高度;
iframe跨域问题:Uncaught DOMException Blocked a frame with origin解决方法
通过JS技术解决引入iframe页面引起的跨域问题,postmessage解决iframe页面跨域问题
js跨域解决方案
在web开发中,跨域问题是经常遇到的,但是由于浏览器同源策略的限制,不同域之间属性和操作是无法直接交互的。本次讨论iframe和父页面的消息通信。
js解决跨域访问问题,在用js访问web后台方法的时候,有时候会遇到跨域访问的问题。文档中介绍了跨域访问产生的原因以及相应的解决办法及代码示例。