利用jQuery.cookie.js插件记录并展示用户浏览历史
作者:阿沐时间:2026-10-29 16:00:52浏览:574
本文介绍如何使用jQuery.cookie.js插件记录用户的网页浏览历史。通过在前端页面引入该插件,获取当前文章标题与URL,将其序列化为JSON格式存入Cookie。在展示页面读取Cookie数据,解析后动态生成列表并渲染至页面,实现简洁高效的浏览历史功能。
浏览历史记录功能概述
本文旨在利用cookie插件,获取用户浏览文章的历史记录,并将用户最近浏览的历史记录显示在页面上。
记录浏览历史的代码实现
在需要添加cookie记录的页面中,加入如下JavaScript代码。
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.cookie.js"></script>
<script type="text/javascript">
$(function(){
var art_title = $("title").html();
var art_url = document.URL;
var history;
var json="[";
//json1是第一次注入cookie以后的第一个json,"此时还不是数组" 以点带面的处理
var json1;
var canAdd= true;
//var json1=eval("({sitename:'dreamdu',sitedate:new Date(1980, 12, 17, 12, 0, 0)})");
if(!$.cookie("history")){
//第一次的时候需要初始化
history = $.cookie("history","{title:\""+art_title+"\""+",url:\""+art_url+"\"}");
}else {
//已经存在
history = $.cookie("history");
json1 = eval("("+history+")");
$(json1).each(function(){
if(this.title==art_title){
canAdd=false;
return false;
}
})
if(canAdd){
$(json1).each(function(){
json = json + "{\"title\":\""+this.title+"\",\"url\":\""+this.url+"\"},";
})
json = json + "{\"title\":\""+art_title+"\",\"url\":\""+art_url+"\"}]";
$.cookie("history",json,{expires:1});
}
}
})
</script>
展示历史记录的代码实现
在展示历史记录的页面中,添加如下JavaScript代码以读取并渲染数据。
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.cookie.js"></script>
<script type="text/javascript">
$(function(){
if($.cookie("history")){
var json = eval("("+$.cookie("history")+")");
var list ="";
$(json).each(function(){
list = list + "<li><a href='"+this.url+"' target='_blank'>"+this.title+"</a></li>";
alert(this.url);
})
$("#list").html(list);;
}
});
</script>
</head>
以上内容是小编给大家分享的通过Jquery.cookie.js实现展示浏览网页的历史记录,希望大家喜欢。
作者最新文章
为什么叫JavaScript:语言命名由来及与Java的历史渊源
2026-11-05 11:37:48
JS获取当前时间年月日时分秒并格式化为YYYY-MM-DD HH:mm:ss
2026-11-04 21:25:21
不同语言间JS与Java/Python加密结果不一致怎么办
2026-11-04 18:27:23
Mock.js 拦截 Axios 和 Fetch 请求的原理与配置方法
2026-11-04 08:13:59
JS怎么获取当前日期并格式化为YYYY-MM-DD
2026-11-03 18:47:03
