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 相关文章推荐
基于jquery中children()与find()的区别介绍
Apr 26 Javascript
JQuery表格内容过滤的实现方法
Jul 05 Javascript
Node.js 的异步 IO 性能探讨
Oct 08 Javascript
JavaScript实现同步于本地时间的动态时间显示方法
Feb 02 Javascript
AngularJS 单元测试(二)详解
Sep 21 Javascript
原生javascript移动端滑动banner效果
Mar 10 Javascript
Vue路由跳转问题记录详解
Jun 15 Javascript
在vue中封装可复用的组件方法
Mar 01 Javascript
浅谈webpack打包之后的文件过大的解决方法
Mar 07 Javascript
详解JS中统计函数执行次数与执行时间
Sep 04 Javascript
JQuery属性操作与循环用法示例
May 15 jQuery
JavaScript实现PC端四格密码输入框功能
Feb 19 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中的时间处理
2006/10/09 PHP
php数组键名技巧小结
2015/02/17 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
Ext.FormPanel 提交和 Ext.Ajax.request 异步提交函数的区别
2009/11/12 Javascript
图像替换新技术 状态域方法
2010/01/28 Javascript
怎么清空javascript数组
2013/05/11 Javascript
2则自己编写的jQuery特效分享
2015/02/26 Javascript
在Ubuntu系统上安装Node.JS的教程
2015/10/15 Javascript
特殊日期提示功能的实现方法
2016/06/16 Javascript
基于JavaScript实现轮播图原理及示例
2020/04/10 Javascript
jQuery tip提示插件(实例分享)
2017/04/28 jQuery
laydate 显示结束时间不小于开始时间的实例
2017/08/11 Javascript
React全家桶环境搭建过程详解
2018/05/18 Javascript
Vue源码分析之Vue实例初始化详解
2019/08/25 Javascript
layer.alert回调函数执行关闭弹窗的实例
2019/09/11 Javascript
基于vuex实现购物车功能
2021/01/10 Vue.js
[06:36]吞吞映像top1
2014/06/20 DOTA
wxPython事件驱动实例详解
2014/09/28 Python
Python 多线程Threading初学教程
2017/08/22 Python
Python cookbook(数据结构与算法)实现优先级队列的方法示例
2018/02/18 Python
python实现log日志的示例代码
2018/04/28 Python
python3.7通过thrift操作hbase的示例代码
2020/01/14 Python
python-sys.stdout作为默认函数参数的实现
2020/02/21 Python
CSS3 实现童年的纸飞机
2019/05/05 HTML / CSS
HTML5网页音乐播放器的示例代码
2017/11/09 HTML / CSS
英国计算机产品零售商:Novatech(定制个人电脑、笔记本电脑、工作站和服务器)
2018/01/28 全球购物
Banana Republic欧盟:美国都市简约风格的代表品牌
2018/05/09 全球购物
环境工程专业个人求职信
2013/12/05 职场文书
学校爱国卫生月活动总结
2014/06/25 职场文书
党员干部廉洁自律承诺书
2015/04/28 职场文书
劳动仲裁代理词范文
2015/05/25 职场文书
学生会工作感言
2015/08/07 职场文书
2019个人工作计划书的格式及范文!
2019/07/04 职场文书
用 Python 元类的特性实现 ORM 框架
2021/05/19 Python
python 对图片进行简单的处理
2021/06/23 Python
mysql幻读详解实例以及解决办法
2022/06/16 MySQL