用JS实现浏览历史记录功能
来源:互联网 发布:2017 行政区域数据库 编辑:程序博客网 时间:2024/06/05 01:59
记得以前学JS的时候。那个COOKIE就没有搞清楚。太麻烦了哈。不像PHP一个函数什么都搞定了。他那个COOKIE一多就不得了。那字符串截的头晕。
所以织梦写的这两个函数很重要。他直接简化了JS的COOKIE。让他由复杂变的简单了。这两个函数在AJAX里面的。
//读写cookie函数
function GetCookie(c_name)
{
if (document.cookie.length > 0)
{
c_start = document.cookie.indexOf(c_name + "=")
if (c_start != -1)
{
c_start = c_start + c_name.length + 1;
c_end = document.cookie.indexOf(";",c_start);
if (c_end == -1)
{
c_end = document.cookie.length;
}
return unescape(document.cookie.substring(c_start,c_end));
}
}
return null
}
function SetCookie(c_name,value,expiredays)
{
var exdate = new Date();
exdate.setDate(exdate.getDate() + expiredays);
document.cookie = c_name + "=" +escape(value) + ((expiredays == null) ? "" : ";expires=" + exdate.toGMTString()); //使设置的有效时间正确。增加toGMTString()
}
把文件引进来后。点击并创建COOKIE
/创建cookie
function getCookies(ids,title){
var saveid = GetCookie('id');
var savetitle = GetCookie('products');
if(saveid != null && savetitle != null)
{
var saveids = saveid.split(',');
var savetitles = savetitle.split(',');
var hasid = false;
saveid = '';
savetitle = '';
j = 1;
for(i=saveids.length-1;i>=0;i--)
{
if(saveids[i]==ids && hasid) continue;
else {
if(saveids[i]==ids && !hasid) hasid = true;
saveid += (saveid=='' ? saveids[i] : ','+saveids[i]);
savetitle += (savetitle=='' ? savetitles[i] : ','+savetitles[i]);
j++;
if(j==10 && hasid) break;
if(j==9 && !hasid) break;
}
}
if(hasid) { return false; }
else saveid += ','+ids;
savetitle += ','+title;
SetCookie('id',saveid,1);
SetCookie('products',savetitle,1);
}
else
{
SetCookie('id',ids,1); //这个是文章ID,好做链接的
SetCookie('products',title,1); //这个是文章标题,用来显示的
}
}
创建好了在内容页读取COOKIE。
<!--输出cookie-->
<script type="text/javascript">
var saveid = GetCookie('id');
var savetitle = GetCookie('products');
if(saveid != null && savetitle != null)
{
var saveids = saveid.split(',');
var savetitles = savetitle.split(',');
var hasid = false;
saveid = '';
savetitle = '';
for(i=saveids.length-1;i>=0;i--)
{
document.write("<li class=\"listline2 textflow\" onmouseover=\"this.style.backgroundColor='#e4e5ea'\" onmouseout=\"this.style.backgroundColor=''\">" +
"<span class=\"adKeyword\">·</span> <a href=\"/plus/view.php?aid="+saveids[i]+"\" title=\""+savetitles[i]+"\">"+savetitles[i]+"</a></li>");
}
}
</script>
最后,清除COOKIE。这个可用AJAX实现。其实用JS也有那种效果的。
//消除cookie,这儿用AJAX更好的
function destroy_cookie(){
SetCookie('id','',1);
SetCookie('products','',1);
document.getElementById('viewHistory').innerHTML="";
window.alert('你已成功清除浏览历史记录!');
}
ok了。要的时候可以直接调函数。没有函数的可以直接写在需要的地方就好了。其实不难。但是得费点时间搞。
- 用JS实现浏览历史记录功能
- 使用cookies实现浏览历史记录功能
- js实现搜索历史记录功能
- 浏览历史记录功能
- asp.net 使用cookies或者session实现浏览历史记录功能
- 实践 商城商品页 浏览历史记录功能
- 浏览历史记录
- 实现浏览文件夹功能
- 实现浏览文件夹功能
- iOS实现带历史记录功能的计算器
- android 实现 搜索保存历史记录功能
- 流式布局(实现历史记录功能)
- 2-7实现用户的历史记录功能
- 商品最近浏览历史记录
- 浏览历史记录通用代码
- Flash实现图片浏览功能
- Android实现新闻浏览功能
- PHP实现分页浏览功能
- android学习笔记
- android流量监控类TrafficStats讲解
- linux 源码网站
- 年年岁岁花相似,岁岁年年人不同
- mutex,semaphore,critical section 简介及使用
- 用JS实现浏览历史记录功能
- 常用的网站提速技术(面试的时候用来吹)
- 同步与死锁
- 关于myentunnel和prioxy
- 在.java文件中嵌入HTML
- Linux平台Makefile文件的编写
- 学习内容
- Hdu 2191 珍惜现在,感恩生活 (多重背包)
- sqlserver2005 express数据库导入/导出 DTSWizard.exe下载/安装