iframe内嵌别人页面,点击回退按钮,页面出错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iframe内嵌别人页面,点击回退按钮,页面出错相关的知识,希望对你有一定的参考价值。

参考技术A

iframe内嵌别人页面,点击回退按钮,页面出错的解决方法如下:

做项目的时候发现,父页面使用iframe 内嵌页面时,比如父页面有个tab,点击不同的tab切换tab的内容,此时,每个不同的tab内容就是一个html页面。

当多次点击tab后,点击浏览器回退按钮,导致页面没有回退,回退的只是iframe的历史页面,直到回退到初始的历史iframe才能够真正的返回上一页。

此时,用的是替换iframe的src链接进行内容切换的。

针对以上问题,只需将整个iframe进行替换即可。

关于vue项目和内嵌iframe页面之间的通信问题

最近项目中遇到一个与内嵌iframe页面之间通信的问题,起初与原生之间通信很简单,没想到过与vue项目通信的问题,霎时间一脸懵*啊,百度了一下,原来是那么简单,这里记录下以供下次参考

//vue页面 向 内嵌iframe传递事件

// vue页面代码
let frame = document.getElementById(‘iframeId‘);  // 或者用vue语法 let frame = this.$refs.iframeId
frame.contentWindow.postMessage(object,‘*‘);   //  object为传送的对象   *号为接收数据的项目地址



// iframe页面
window.addEventListener(‘message‘,function(event){
    

·// 传送的数据在event.data里面 })
//  iframe页面向vue项目页面传递事件

//  iframe页面
window.parent.postMessage(object,‘*‘);   //  object为需要传送的数据对象  *号为接收数据的项目url地址

//主页面
window.addEventListener(‘message‘,,function(event){
    
         //  数据在event.data对象中
})

 



以上是关于iframe内嵌别人页面,点击回退按钮,页面出错的主要内容,如果未能解决你的问题,请参考以下文章

火狐中很奇怪的history.go(-n)的问题

本地测试时,iframe框架页正常,但是将网页放到服务器时,iframe中有的内嵌页面加载不出来

vue项目如何内嵌如iframe页面

给页面内嵌iframe绑定监听事件

请问高手,html如何获取iframe中嵌套的页面元素值

js小demo-迫使页面总是单独显示,不能被嵌入到iframe中