JS利用cookie记忆当前位置的防刷新导航效果


Posted in Javascript onOctober 15, 2015

本文实例讲述了JS利用cookie记忆当前位置的防刷新导航效果。分享给大家供大家参考。具体如下:

这里演示利用cookie记忆当前位置的防刷新导航条,主要向大家展示如何在Js中使用Cookies技术,用好了Cookies,会使你的Js技术更上一层楼。这个菜单就感觉不错,当你鼠标点击之后,重新刷新页面后它仍然是保留在原位置,好像带有记忆功能。

运行效果截图如下:

JS利用cookie记忆当前位置的防刷新导航效果

在线演示地址如下:

具体代码如下:

<!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程序设计有所帮助。

Javascript 相关文章推荐
document对象execCommand的command参数介绍
Aug 01 Javascript
JavaScript中“+”的陷阱深刻理解
Dec 04 Javascript
js实现可得到不同颜色值的颜色选择器实例
Feb 28 Javascript
Angular.js如何从PHP读取后台数据
Mar 24 Javascript
使用jQuery判断浏览器滚动条位置的方法
May 30 Javascript
Vue2实现组件props双向绑定
Dec 02 Javascript
JavaScript中for循环的几种写法与效率总结
Feb 03 Javascript
基于jQuery Easyui实现登陆框界面
Jul 10 jQuery
vue 动态绑定背景图片的方法
Aug 10 Javascript
vue改变循环遍历后的数据实例
Nov 07 Javascript
Vue实现浏览器打印功能的代码
Apr 17 Javascript
JS控制下拉列表左右选择实例代码
May 08 Javascript
如何实现移动端浏览器不显示 pc 端的广告
Oct 15 #Javascript
JS简单限制textarea内输入字符数量的方法
Oct 14 #Javascript
Node.js与Sails ~项目结构与Mvc实现及日志机制
Oct 14 #Javascript
浅析四种常见的Javascript声明循环变量的书写方式
Oct 14 #Javascript
浅谈angular.js中实现双向绑定的方法$watch $digest $apply
Oct 14 #Javascript
JS更改select内option属性的方法
Oct 14 #Javascript
JavaScript+CSS实现仿Mootools竖排弹性动画菜单效果
Oct 14 #Javascript
You might like
适用于php-5.2 的 php.ini 中文版[金步国翻译]
2011/04/17 PHP
PHP中操作ini配置文件的方法
2013/04/25 PHP
ThinkPHP模板输出display用法分析
2014/11/26 PHP
php实现递归与无限分类的方法
2015/02/16 PHP
浅谈关于PHP解决图片无损压缩的问题
2017/09/01 PHP
PHP通过调用新浪API生成t.cn格式短网址链接的方法详解
2019/02/20 PHP
HTML中事件触发列表与解说
2007/07/09 Javascript
javascript SocialHistory 检查访问者是否访问过某站点
2008/08/02 Javascript
google地图的路线实现代码
2009/08/20 Javascript
javascript内置对象arguments详解
2014/03/16 Javascript
wap浏览自动跳转到wap页面的js代码
2014/05/17 Javascript
jquery+ajax实现跨域请求的方法
2015/01/20 Javascript
jQuery实现元素拖拽并cookie保存顺序的方法
2016/02/20 Javascript
Bootstrap3多级下拉菜单
2017/02/24 Javascript
浅谈angular2路由预加载策略
2017/10/04 Javascript
Node.js中读取TXT文件内容fs.readFile()用法
2018/10/10 Javascript
彻底弄懂 JavaScript 执行机制
2018/10/23 Javascript
解决Vue调用springboot接口403跨域问题
2019/09/02 Javascript
js瀑布流布局的实现
2020/06/28 Javascript
基于JS实现计算24点算法代码实例解析
2020/07/23 Javascript
jupyter安装小结
2016/03/13 Python
Python编程之event对象的用法实例分析
2017/03/23 Python
使用python获取csv文本的某行或某列数据的实例
2018/04/03 Python
python 实现数组list 添加、修改、删除的方法
2018/04/04 Python
Python文件打开方式实例详解【a、a+、r+、w+区别】
2019/03/30 Python
Python3+Appium安装使用教程
2019/07/05 Python
django使用F方法更新一个对象多个对象字段的实现
2020/03/28 Python
Django框架配置mysql数据库实现过程
2020/04/22 Python
解决c++调用python中文乱码问题
2020/07/29 Python
南威尔士家居商店:Leekes
2016/10/25 全球购物
中国一家综合的外贸B2C电子商务网站:DealeXtreme(DX)
2020/03/10 全球购物
岗位职责定义及内容
2013/11/08 职场文书
银行出纳岗位职责
2013/11/25 职场文书
考核工作实施方案
2014/03/30 职场文书
解决mysql:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO/YES)
2021/06/26 MySQL
mysql insert 存在即不插入语法说明
2022/03/25 MySQL