关于COOKIE的问题,如何每次跳转一次链接就存一个地址,之后再取出来

testerAPP 2020-02-24 05:32:39
大概是这样的,在进入一个页面后,存储当前页面的URL地址到COOKIE,然后从这个页面点击链接跳转后,原先存储的不动,再存储个新的当前页面的URL链接,以此类推。只要一直从最初的那个页面内所点击链接跳转的每一个页面再跳转的同级页面URL都会存储到COOKIE。
之后我又该怎样从这个COOKIE里取出当前页跳转过来的上一页的链接呢?

因为我要做手机上点击实体按键返回的功能,而页面里加了meta阻止了来源页面的记录,所以document.referrer无法获取上一页记录。所以想到用COOKIE来弄,但当下手去弄的时候发现太难了。不知道如何下手。资料了也搜索了很多,没有相关的信息。所以不得不来请教。还望论坛大佬能够给与帮助啊,非常感谢。

下面是,手机自带返回的JS代码。


pushHistory();
window.addEventListener("popstate", function(e) {
if(document.referrer == ''){
window.location = "没有referrer将跳转的指定页面地址";
}else{
window.history.go(-1);
}
}, false);

function pushHistory(){
var state = {
title: "title",
url: "#"
};
window.history.pushState(state, "title", "#");
}
...全文
395 2 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
testerAPP 2020-02-26
  • 打赏
  • 举报
回复
引用 1 楼 天际的海浪 的回复:

用cookie不好。应该用sessionStorage
<script type="text/javascript">
var historyArr = JSON.parse(sessionStorage.historyArr||"[]");
console.log(historyArr);
if (historyArr[0] != location.href) {
	historyArr.unshift(location.href);
	sessionStorage.historyArr = JSON.stringify(historyArr);
}
function historyBack() {
	if (historyArr.length<2) return;
	historyArr.shift();
	sessionStorage.historyArr = JSON.stringify(historyArr);
	location.href = historyArr[0]; 
	
}
</script>
<input type="button" value="返回上一页面" onclick="historyBack();" />
完全不懂sessionStorage,请问如何在我那段代码里执行呢?因为我每点一次手机上的实体按键,不管跳了多少次页面,从哪跳转过来就会返回当前页的上一级页面,一直按返回键一直向上一级页面跳,直到返回到最初进来的那一页面时,再点返回,返回的是指定页面链接。光是说都快把我弄晕了。。。
天际的海浪 2020-02-26
  • 打赏
  • 举报
回复

用cookie不好。应该用sessionStorage
<script type="text/javascript">
var historyArr = JSON.parse(sessionStorage.historyArr||"[]");
console.log(historyArr);
if (historyArr[0] != location.href) {
	historyArr.unshift(location.href);
	sessionStorage.historyArr = JSON.stringify(historyArr);
}
function historyBack() {
	if (historyArr.length<2) return;
	historyArr.shift();
	sessionStorage.historyArr = JSON.stringify(historyArr);
	location.href = historyArr[0]; 
	
}
</script>
<input type="button" value="返回上一页面" onclick="historyBack();" />

87,997

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧