利用cookie实现iframe刷新时停留在当前页面

Posted 纸鸢@tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了利用cookie实现iframe刷新时停留在当前页面相关的知识,希望对你有一定的参考价值。

这段时间第一次用iframe,发现问题还挺多,这次主要解决了一个用cookie实现iframe刷新时停留在当前页面,具体步骤如下:

1.必须在每一个页面中记录下当前的url并存入cookie中,具体代码如下:

<script>
//记录当前页面url
document.cookie="url=regist_code.
html";
</script>

2.在主页面中读取cookie中键为‘url‘的值。代码如下:

 <iframe id="index_frame" name="index_Frame" src=""
width="100%" height="88%" allowTransparency="true" frameborder="0" ranat="server"></iframe>

//js代码
<script>
var iframe = document.getElementById(‘index_frame‘);
if(iframe.getAttribute(‘src‘)!=‘‘){
iframe.setAttribute(‘src‘,‘index.html‘);//判断第一次进入页面时,显示的是第一个页面,详见ps
}
function getCookie(url)
{
if (document.cookie.length>0)
{
var strCookie=document.cookie;
//将多cookie切割为多个名/值对
var arrCookie=strCookie.split("; ");
//遍历cookie数组,处理每个cookie对
for(var i=0;i<arrCookie.length;i++){
var arr=arrCookie[i].split("=");
//找到名称为userId的cookie,并返回它的值
if(url==arr[0]){
return(arr[1]);
break;
}
}
}
}
iframe.setAttribute(‘src‘,getCookie(‘url‘));//重新设置获取的url,实现刷新显示当前页面
</script>

ps:本次例子是将所有的页面都提出来,包括主页,所以第一次的进入页面的时候需要设置iframe的src,如果直接在src中写入src="index.html"的话,当页面刷新时会有延迟,使得页面先出现index.html的内容,然后才显示其他当前点击页面的内容。

以上是关于利用cookie实现iframe刷新时停留在当前页面的主要内容,如果未能解决你的问题,请参考以下文章

怎么刷新页面后,js就不执行了

如何用js控制网页刷新后滚动条保持在原来的位置

关于vue+Element-ui项目分页刷新不停留在当前页码bug解决

刷新页面后怎么让js定时器继续刷新前的状态继续计时

如何让js在页面加载后只执行一次,也就是再次刷新当前页,不再执行js

layer 关闭当前iframe并刷新父页面(上一页)