之前在写叶卡切换的时候总需要把js代码写到html标签里面。

后来接触了闭包后知到一点点怎么通过闭包实现该功能。

之后又想通过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=utf-8" /><title>test</title><style type="text/css">.cl{    clear:both;}#menu{    width:600px;    height:30px;}#menu div{    display:inline;float:left;    border:1px solid #000;    margin-left:4px;    width:80px;    height:30px;    line-height:30px;    padding:6px;

}#menu .menu_on{    background:#FFC;    margin-bottom:-1px;    height:31px;}

#content{    border:1px solid #000;    width:600px;    margin-left:4px;}.c_off{    display:none;}</style></head>

<body><div id="menu"><div class="menu_off">浙江</div><div class="menu_off">沪鲁</div><div class="menu_off">中西部</div><div class="menu_off">其他</div></div><div id="content" class="cl"><div class="c_off">浙江</div><div class="c_off">沪鲁</div><div class="c_off">中西部</div><div class="c_off">其他</div></div><script type="text/javascript">myMenu=document.getElementById("menu");menuDiv=myMenu.getElementsByTagName("div");myContent=document.getElementById("content");contentDiv=myContent.getElementsByTagName("div");window.onload=function(){    cookieId=1;    cookieId=getCookie('menuId');    menuDiv[cookieId].className="menu_on";    contentDiv[cookieId].className="c_on";for(var i=0;i<menuDiv.length;i++)    {        menuDiv[i].index=i;        (function(myid)        {

            menuDiv[i].onclick=function()            {for(var i=0;i<menuDiv.length;i++)                {                    menuDiv[i].className="menu_off";                    contentDiv[i].className="c_off";                }    this.className="menu_on";                contentDiv[myid].className="c_on";                cookieId=this.index;                setCookie('menuId',cookieId,365);            }        })(i);    }}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.lengthreturn unescape(document.cookie.substring(c_start,c_end))} }return ""}

function setCookie(c_name,value,expiredays)//名称,值,过期时间{var exdate=new Date()exdate.setDate(exdate.getDate()+expiredays)//setDate() 方法用于设置一个月的某一天。调整过的日期的毫秒表示。getDate月份中的某一天,使用本地时间。返回值是 1 ~ 31 之间的一个整数。document.cookie=c_name+ "=" +escape(value)+//escape() 函数可对字符串进行编码,这样就可以在所有的计算机上读取该字符串。可以使用 unescape() 对 escape() 编码的字符串进行解码。((expiredays==null) ? "" : "; expires="+exdate.toGMTString())//expires为过期时间。toGMTString() 方法可根据格林威治时间 (GMT) 把 Date 对象转换为字符串,并返回结果。不赞成使用此方法。请使用 toUTCString() 取而代之!}</script></body></html>

转载于:https://www.cnblogs.com/scb1901/archive/2011/09/06/2169297.html

用cookie实现叶卡的记忆功能相关推荐

  1. 个人工具开发【卡片式记忆面试题开发】v.1.0.3

    1. 个人工具开发[卡片式记忆面试题开发]v.1.0.3 目的:主要是供个人地铁或公交路上,做一些自己整理的面试题. 例如目前比较感兴趣的java.android.算法.系统.正则表达式相关的面试题. ...

  2. 卡片式记忆工具:Studies Mac版

    Studies Mac版是学习必备的卡片式记忆工具,你可以使用Studies for mac激活版记录学习笔记,文本.图像.音频.视频都能记录在内,studies for mac版还支持从文本.Exc ...

  3. 个人工具开发【卡片式记忆-面试题】v.1.0.0

    1. 个人工具开发[卡片式记忆-面试题]v.1.0.0 目的:主要是供个人地铁或公交路上,做一些自己整理的面试题.例如目前比较感兴趣的java\android相关的面试题.方便地铁利用手机记忆用途 2 ...

  4. 个人工具开发【卡片式记忆面试题开发】v.1.0.2

    1. 个人工具开发[卡片式记忆面试题开发]v.1.0.2 目的:主要是供个人地铁或公交路上,做一些自己整理的面试题. 例如目前比较感兴趣的java.android.算法.系统.正则表达式相关的面试题. ...

  5. 让你的javascript函数拥有记忆功能,降低全局变量的使用

    考虑例如以下场景:假如我们须要在界面上画一个圆,初始的时候界面是空白的.当鼠标移动的时候,圆须要尾随鼠标移动.鼠标的当前位置就是圆心.我们的实现方案是:假设界面上还没有画圆,那么就新创建一个:假设已经 ...

  6. 神经网络是存储了海量的信息还是将海量的关系映射存储在了一起(发挥了存储记忆功能),还是变成了看似是一个公式,实际是成千上万个规律的公式融合在一个式子中( 类似于正弦波的傅里叶分解成无限中频率的波的加和

    神经网络是存储了海量的信息还是将海量的关系映射存储在了一起(发挥了存储记忆功能): 还是变成了看似是一个公式,实际是成千上万个规律的公式融合在一个式子中( 类似于正弦波的傅里叶分解成无限中频率的波的加 ...

  7. c# winforms TextBox的记忆功能

    c# winforms TextBox的记忆功能 1:在项目上点右键  sproperties-settings 添加项目 如 MyText  类型 String 2: 获取值:   string l ...

  8. 为什么计算机有信息记忆功能,为什么计算机有记忆能力

    2015-02-01 09:56 计算机有一个突出的特点,那就是它具有很强的记忆功能. 它能准确可靠地"记"住大量信息,既不会记错,也不会忘记. 人的记忆能力来自大脑,计算机的记忆 ...

  9. 智能记忆功能nest_如何设置和安装Nest Protect智能烟雾报警器

    智能记忆功能nest If you want to add a bit more convenience and safety to your home's smoke alarm setup, th ...

最新文章

  1. 一个简单的三层架构例子(.NET入门)
  2. MS-SQLSERVER--错用了LEN()函数
  3. 计算机动画的主要应用领域,简述计算机的主要特点和主要应用领域
  4. 抖音电商“双11”:品质国货和地方农特产成亮点
  5. [译] 如何学习 CSS
  6. Mac/Linux/Win使用scrcpy投屏
  7. 计算机启动与故障修复工具,Windows7异常启动的故障修复
  8. 良冶之子,必学为裘;良弓之子,必学为箕
  9. 2021年初行政区划数据
  10. linux 使用 雅黑字体,linux 使用微软雅黑字体
  11. 批量检测支付宝是否开通
  12. 计算机网络 - UDP/TCP、IP、MAC报文协议格式
  13. python实现12306自助刷票下单
  14. java 登录失效时间_详谈Java设置session超时(失效)的时间
  15. jquery 鼠标滚轮实现图片缩放
  16. java scratch_scratch进阶java教程贴
  17. vmware开启虚拟机时虚拟机黑屏的解决办法
  18. 基于cocos2dx引擎开发的大富翁游戏
  19. docker启动容器之后马上又自动关闭
  20. 谷歌浏览器驱动国内镜像下载地址

热门文章

  1. React开发(237):dva概念2state
  2. Taro+react开发(94):问答模块01
  3. 前端学习(3242):react总结生命周期
  4. 19什么情况下会帮助他人
  5. 工作283:抽离出新页面优化
  6. 前端学习(2594):后台系统的权限控制和管理--界面的控制
  7. 工作95视频上传逻辑
  8. 1前端学习(2345):关于前端对于xml格式文件的渲染
  9. java面试题31:结构型模式中最体现扩展性的模式是()
  10. mybatis学习(55):延迟加载