相关模板:view_article.htm 其他页面同理
首先引入layer友好弹出层
<script language="javascript" type="text/javascript" src="/public/plugins/layer-v3.1.0/layer.js?t=1653382264"></script>
在模板尾部写入以下js代码
<script>
/**存cookie */
function setCookie(objName objValue objHours) {
var str = objName + "=" + escape(objValue); //编码
if (objHours > 0) {//为0时不设定过期时间,浏览器关闭时cookie自动消失
var date = new Date();
var ms = objHours * 3600 * 1000;
date.setTime(date.getTime() + ms);
str += "; expires=" + date.toGMTString();
}
document.cookie = str;
}
/**取cookie */
function getCookie(objName) {
var arrStr = document.cookie.split("; ");
for (var i = 0; i < arrStr.length; i++) {
var temp = arrStr[i].split("=");
if (temp[0] == objName){
return unescape(temp[1]); //解码
}
}
}
window.on-scroll=function Set(){
var h=document.documentElement.scrollTop;
//判断展开按钮是否点击,-1代表未点击
if(document.getElementById("name1").innerHTML.indexOf("收起")==-1){
setCookie({$eyou.field.aid} h 9999);
console.log(h);
}
else{
setCookie({$eyou.field.aid} h+0.01 9999);
console.log(h+0.01);
}
}
var ch=getCookie({$eyou.field.aid});
if(ch!=null){
//判断读取的高度是否被1整除,不能整除的代表点击展开后存入的高度数据,需要先点击展开按钮
if (ch%1!=0){
document.getElementById("name1").click();
document.documentElement.scrollTop=ch;
layer.msg("已跳转到上次阅读位置!"{icon: 6});
}
else{
document.documentElement.scrollTop=ch;
layer.msg("已跳转到上次阅读位置!"{icon: 6});
}
}
</script>
由于我的内容页有点击展开/关闭按钮,因此多了一层判断,可根据个人情况修改!
效果如图