
正文
js跨域请求iframe的函数,js如何跨域请求
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
...无法跨域,怎么解决?是想获取iframe的框架里面的东西!!
我们可以借助 Nginx (需要与iframe请求的域名所在的Nginx), 配置一个代理地址,进行中间跳转,即可解决跨域问题。
可以方便窗口跟内部iframe之间进行通信,并且可以实现跨主域通信。但是有一些限制,老版本的浏览器一般不支持。父窗口只能向iframe中发送信息,iframe只能收消息,且父窗口不能直接操作iframe中的内容。
跨域的话想用父页面的js获取iframe里的元素是不可能的。用chrome扩展程序的话是可以的。
就是建立一个隐藏的iframe在当前页面b.html,并在当前页中定义函数a。服务器端把返回的数据重定向到一个同域的页面(a.html)中。
流程还是很复杂的,用手机敲不太方便,可以查看这个号里的文章,讲解的很详细。HTML5学堂,在历史文章中搜索跨域即可。
相关问答
Q1: js如何操作iframe的跨域问题
我们可以借助 Nginx (需要与iframe请求的域名所在的Nginx), 配置一个代理地址,进行中间跳转,即可解决跨域问题。
JavaScript 跨域获取 iframe 中的内容:要解释这个问题,首先要解释两个技术点。每个“窗口”都是一个JS Runtime,即JS的运行时。
跨域的话想用父页面的js获取iframe里的元素是不可能的。用chrome扩展程序的话是可以的。
Q2: 用js互相调用iframe页面内的js函数
iframe name=myFrame src=child.html/iframe myFrame.window.functionName();iframe子窗口调用父窗口方法 parent.functionName();用js互相调用iframe页面内的js函数。
父窗口可以在取得iframe对象以后(document.getElementById)以后(比如ifa),用ifa.function1()来调用iframe里面window.function1函数,iframe里面的js可以用parent.function2()来调用父窗口里面的window.function2函数。
其中parent.html中含有IFrame并且IFrame指向child.html。现在需要在parent.html/child.html中调用child.html/parent.html的一个js方法。
子框架ID.函数名():如iframe src=../test.html id=frame1/iframe 调用格式应为:frametest(),光用test()显然是找不到的,另外子窗体中定义的全局变量也可以用类似格式。IE8测试通过,其它不知。
iframe子页面调用父页面js函数 子页面调用父页面函数只需要写上window.praent就可以了。
Q3: JS跨域访问操作iframe代码
var ifr = document.getElementById(Soft_Iframe);//Soft_Iframe是iframe的id var win = ifr.window || ifr.contentWindow;win.FilterSearch();//是iframe里面的js方法,相当于执行子页面的内容。
经过我在网上查资料,找到了JS操作iframe中HTML元素的方法。示例如下。
每个“窗口”都是一个JS Runtime,即JS的运行时。如果只有一个窗口,那么就只有一个Runtime;如果一个窗口下面还有一个iframe,那么就有两个Runtime;以此类推。Runtime之间互操作(或者通信)是有跨域限制的。
只能在网页与内嵌网页(iframe)同源时,网页才能访问内嵌页面中元素。网页跟内嵌网页不同源,只能用”postMessage发送信息。如果JavaScript能获取跨域获取内嵌页面元素,那么黑客随意利用CSRF攻击,就能黑掉你的网页。
js跨域请求iframe的函数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于js如何跨域请求、js跨域请求iframe的函数的信息别忘了在本站进行查找喔。








