TKCB 发表于 2020-1-3 13:54:46

嵌套iFrame使用postMessage相互传递消息(嵌套iFrame、跨父子窗口、跨页面)

本帖最后由 TKCB 于 2020-2-4 09:57 编辑

TKCB网站
网址:www.tkcb.cc


嵌套iFrame使用postMessage相互传递消息(嵌套iFrame、跨父子窗口、跨页面)
以前浏览器页面之间相互访问,是允许的,但后面就不允许了。
于是就找到了 postMessage这个东西,用来进行通信。

下面是网上搜到的介绍:
window.postMessage() 方法可以安全地实现跨源通信。通常,对于两个不同页面的脚本,只有当执行它们的页面位于具有相同的协议(通常为https),端口号(443为https的默认值),以及主机(两个页面的模数 Document.domain设置为相同的值) 时,这两个脚本才能相互通信。window.postMessage() 方法提供了一种受控机制来规避此限制,只要正确的使用,这种方法就很安全。

从广义上讲,一个窗口可以获得对另一个窗口的引用(比如 targetWindow = window.opener),然后在窗口上调用 targetWindow.postMessage() 方法分发一个MessageEvent 消息。接收消息的窗口可以根据需要自由处理此事件。传递给 window.postMessage() 的参数(比如 message )将通过消息事件对象暴露给接收消息的窗口。


这是第一个分享给大家的H5技术练习,希望大家喜欢。

不废话看demo,代码注释很多,相信你们能看懂,代码写的不够好,敬请谅解
demo:http://www.tkcb.cc/menu/skill/html/html_0001/
截图:



源文件下载(包含注释)


免费下载地址(已经无法免费下载了,CSDN总是自动给资源设置积分!!!够无耻!):
**** Hidden Message *****


互联网时代,为什么要下载源文件?
因为互联网是不靠谱的,下载到自己电脑永远不会丢失和找不到,也利于学习和收集。
源文件会包含很多注释,这些通常是展示页面里面没有的。


免费是最昂贵的
银子还是要收的,因为 “免费的东西最昂贵” ,请深刻理解这句话的含义!!!


广告QQ(TKCB):2414268040(欢迎和我聊天交流,有朋自远方来不亦说乎)QQ群:96759336(AS3殿堂之路,Flash Animate AS3 AIR 技术交流)QQ群:705730359(H5天路历程,HTML5 CSS3 JaveScript技术交流)QQ群:463560360(King系列软件分享交流,TKCB 出品的 King 系列软件分享、使用、交流、反馈等)TKCB网站:www.tkcb.cc官方技术论坛:www.11ria.com

kasher 发表于 2020-1-3 18:32:56

学习了#:)#:)

雪原xy 发表于 2020-1-8 21:13:37

好东西收藏起来!!!!
页: [1]
查看完整版本: 嵌套iFrame使用postMessage相互传递消息(嵌套iFrame、跨父子窗口、跨页面)

感谢所有支持论坛的朋友:下面展示最新的5位赞助和充值的朋友……更多赞助和充值朋友的信息,请查看:永远的感谢名单

SGlW(66139)、 anghuo(841)、 whdsyes(255)、 longxia(60904)、 囫囵吞澡(58054)

下面展示总排行榜的前3名(T1-T3)和今年排行榜的前3名的朋友(C1-C3)……更多信息,请查看:总排行榜今年排行榜

T1. fhqu1462(969)、 T2. lwlpluto(14232)、 T3. 1367926921(962)  |  C1. anghuo(147)、 C2. fdisker(27945)、 C3. 囫囵吞澡(58054)