Javascript 从历史记录cookie中省略某些页面
我正在使用此脚本将用户的历史记录存储到最近10页访问的cookie中。到目前为止,我已经得到了使用document.title和url在列表中显示cookie数据的脚本 我的问题是,添加页面跳过功能的最简单方法是什么,它可以让我忽略某些页面,而不将其添加到历史cookie中?我尝试过的一切都没有奏效,因为这有点超出了我的知识范围 谢谢你的时间和帮助 JS:Javascript 从历史记录cookie中省略某些页面,javascript,cookies,history,Javascript,Cookies,History,我正在使用此脚本将用户的历史记录存储到最近10页访问的cookie中。到目前为止,我已经得到了使用document.title和url在列表中显示cookie数据的脚本 我的问题是,添加页面跳过功能的最简单方法是什么,它可以让我忽略某些页面,而不将其添加到历史cookie中?我尝试过的一切都没有奏效,因为这有点超出了我的知识范围 谢谢你的时间和帮助 JS: (函数($){ var历史; 函数getHistory(){ var tmp=$.cookie(“历史”); 如果(tmp==未定义| |
(函数($){
var历史;
函数getHistory(){
var tmp=$.cookie(“历史”);
如果(tmp==未定义| | tmp===空)tmp=“”;
如果($.trim(tmp)==“”)tmp=[];
else tmp=tmp.split(“| |”);
历史=[];
$.each(tmp,function(){
var split=this.split(“|”);
历史推送({
标题:拆分[0],
url:split[1]
});
});
}
函数saveHistory(){
var tmp=[];
$.each(历史记录,函数(){
tmp.push(this.title+“|”+this.url);
});
$.cookie(“history”,tmp.join(“| |”),{expires:60,路径:“/”});
}
函数addToHistory(标题、url){
var newHistory=[]
$.each(历史记录,函数(){
如果(this.url!=url)newHistory.push(this);
});
历史=新历史;
如果(历史长度>=10){
shift();
}
历史推送({
标题:标题,,
url:url
});
保存历史();
写历史();
}
函数writeHistory(){
变量列表=$(“
”);
$.each(历史记录,函数(){
变量元素=$(“”);
变量链接=$(“”);
link.attr(“href”,this.url);
链接文本(此标题);
元素。追加(链接);
列表。追加(元素);
});
$(“#历史”).empty().append(列表);
}
$(文档).ready(函数(){
getHistory();
var url=document.location.href;
var split=url.split(“#”);
var标题;
如果(拆分长度>1){
title=$(“#”+split[1]).text();
}否则{
title=document.title;
}
如果(title==undefined | | title==null | |$.trim(title)==“”)title=url;
addToHistory(标题、url);
url=split[0];
$(“a[href^='#'])。单击(函数(){
var-link=$(这个);
var href=link.attr(“href”);
var linkUrl=url+href;
var title=$(href).text();
如果(title==未定义的| | title==空| |$.trim(title)==”)title=linkUrl;
addToHistory(标题、链接URL);
});
});
})(jQuery);
HTML:
<div id="history"></div>
有几种方法可以解决这个问题。。。您可以保留一个不保存的URL数组,或者您可以在页面中放置一些内容,让脚本知道不保存该页面 函数saveHistory(){ if($('.no save history')返回false; /*...*/ } HTML: