本文实例讲述了JS利用cookie记忆当前位置的防刷新导航效果。分享给大家供大家参考。具体如下:
这里演示利用cookie记忆当前位置的防刷新导航条,主要向大家展示如何在Js中使用Cookies技术,用好了Cookies,会使你的Js技术更上一层楼。这个菜单就感觉不错,当你鼠标点击之后,重新刷新页面后它仍然是保留在原位置,好像带有记忆功能。
运行效果截图如下:
在线演示地址如下:
http://demo.VeVB.COm/js/2015/js-cookie-nav-pos-menu-demo/
具体代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>cookie记忆-防刷新菜单</title><style>a{color:#5A73F3;text-decoration:none}body{background:#333;margin:30px;font-size:14px;}#menu li{float:left;height:25px;line-height:25px;list-style:none}#menu li a{padding:10px;}a:hover{background:#ccc;color:##3399FF}a.hover{height:25px;line-height:25px;background:red;color:#ffffff}a,area{blr:e-xpression(this.onFocus=this.blur())}:focus{-moz-outline-style:none;} </style></head><body><div id="menu"> <ul> <li><a href="javascript:void(0)" class="hover" onclick="changename(0)" hidefocus="true">我的菜单</a></li> <li><a href="javascript:void(0)" onclick="changename(1)" hidefocus="true">网页模板</a></li> <li><a href="javascript:void(0)" onclick="changename(2)" hidefocus="true">精品代码</a></li> <li><a href="javascript:void(0)" onclick="changename(3)" hidefocus="true">设计素材</a></li> <li><a href="javascript:clear();" hidefocus="true">恢复初始</a></li> </ul></div><script language="javascript">function changename(c,cl){ var d=document.getElementById("menu").getElementsByTagName("a"); if(!cl) { writeCookie("hovers",c,222); } c=readCookie("hovers")?readCookie("hovers"):c; for(i=0;i<d.length;i++) { d[i].className=i==c?"hover":""; }}function writeCookie(name, value, hours){ var expire = ""; if(hours != null) { expire = new Date((new Date()).getTime() + hours * 3600000); expire = "; expires=" + expire.toGMTString(); } document.cookie = name + "=" + escape(value) + expire;}function readCookie(name){ var cookieValue = ""; var search = name + "="; if(document.cookie.length > 0) { offset = document.cookie.indexOf(search); if (offset != -1) { offset += search.length; end = document.cookie.indexOf(";", offset); if (end == -1) end = document.cookie.length; cookieValue = unescape(document.cookie.substring(offset, end)) } } return cookieValue;}function clear(){ writeCookie("hovers","",222); document.location=document.location.href;}changename(0,1)</script></body></html>
希望本文所述对大家的JavaScript程序设计有所帮助。
新闻热点
疑难解答