怎么用cookie做一个选项卡?

什么是cookie?

Cookies虽然一般都以英文名呈现,但是它还是有一个可爱的中文名“小甜饼”。Cookies是指服务器暂存放在你的电脑里的txt格式的文本文件资料,主要用于网络服务器辨别电脑使用。比如浏览网站时,Cookies 记录下来你输入的一些资料和信息。再访问同一个网站,就会依据Cookie里的内容来判断使用者,送出特定的信息内容给你。

Cookies有什么作用?

首先,它在使用上更便捷,比如你之前在我们新浪微博上进行登陆过用户名。下次,再登陆时,系统就可以默认你的用户名甚至是密码,节省了你的时间。

第二,网站利用Cookies跟踪统计用户访问该网站的习惯,做出自己的服务调整。一方面是方便为用户提供个性化的服务,另一方面,也可以为网站经营策略带来创新,就如同不记名的问卷调查。

虽然,Cookies 最广泛的是记录用户登录信息,比如自动登陆,但是它也存在用户信息泄密的问题。另外,也有侵犯隐私的嫌疑,比如我们登陆淘宝后,再登陆其他有淘宝推荐广告的网站会直接出现我们在淘宝搜索过的信息。

如何设置Cookies?

由于cookies与用户隐私权的问题并没有相关法律约束,很多网站仍然在利用cookie跟踪用户行为,为此,小编在此特地为你提供限制cookie设置方法。

IE浏览器,菜单“工具-Internet选项-隐私”来查看和修改,通过“隐私”选项中的高低来决定是否允许网站利用cookie跟踪自己的信息,另外,也可以通过手动输入具体的网站设置允许或者禁止使用Cookies进行编辑。

说了这么多,该进入我们的主题:选项卡问题刷新后怎么保持原来的选项。

以下是是解决问题的代码:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>选项卡</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        li{
            list-style: none;
        }
        #wrap{
            width: 400px;
            height: 340px;
            border: 1px solid black;
            margin: 100px auto;
        }
        ul{
            height: 34px;
            border-bottom: 1px solid black;
            line-height: 34px;
        }
        li{
            float: left;
            width: 132px;
            height: 33px;
            border-left: 1px solid black;
            text-align: center;
            cursor: pointer;
        }
        #box div{
            text-align: center;
            line-height: 100px;
        }
        .on{
            background: pink;
        }
    </style>
    <script>
        window.onload=function(){
            var oDox=document.getElementById("wrap");
            var aLi=document.getElementsByTagName("li");
            var aDiv=oDox.getElementsByTagName("div");

            for(var i=0;i<aLi.length;i++){
                aLi[i].index=i;
                aLi[i].onclick=function(){
                    for(var i=0;i<aLi.length;i++){
                        aLi[i].className="";
                        aDiv[i].style.display="none";
                        setCookie("index",this.index,1)
                    }
                    this.className="on";
                    aDiv[this.index].style.display="block";
                }
            }
            //判断是有cookie值
            if(getCookie("index")){
                for(var i=0;i<aLi.length;i++){
                    aLi[i].className=‘‘;
                    aDiv[i].style.display=‘none‘
                }
                aLi[getCookie(‘index‘)].className=‘on‘;
                aDiv[getCookie(‘index‘)].style.display=‘block‘;
            }
            ///设置cookie
            function setCookie(name,value,iDay){
                if(iDay){
                    var oDate=new Date();
                    oDate.setDate(oDate.getDate()+iDay);
                    document.cookie=name+‘=‘+value+‘;path=/;expires=‘+oDate;
                }else{
                    document.cookie=name+‘=‘+value+‘;path=/‘;
                }
            };
            //获取cookie
            function getCookie(name){
                var arr=document.cookie.split("; ");
                for(var i=0;i<arr.length;i++){
                    var arr1=arr[i].split("=");
                    if(arr1[0]==name){
                        return arr1[1];
                    }

                }

                return "";
            }
        }
    </script>
</head>
<body>
<div id="wrap">
    <ul>
        <li class="on">tab1</li>
        <li>tab2</li>
        <li>tab3</li>
    </ul>
    <div>tab1</div>
    <div>tab2</div>
    <div>tab3</div>
</div>
</body>
</html>

希望能帮到大家。

时间: 2024-11-05 18:58:51

怎么用cookie做一个选项卡?的相关文章

使用node.js做一个自用的天气插件

var request = require('request') var url = 'http://www.baidu.com/home/xman/data/superload' var cookie = '你登录百度后的cookie' var options = { method: "GET", url: url, qs: { "type": "weather", "asyn": 1, "t": new

从零开始学会做一个简单的APP

本人是矿大学信息安全的大三狗,混了两年日子之后幡然醒悟决定做些自己早就想做的事情,学校的联通宽带是按时长收费的,但是每次查询已用时长和所扣费用步骤都十分的繁琐,大二的时候都想着要自己做一个APP来帮助大家减少这些繁琐的步骤,终于拖了半年多才开始做.从只有一点Java基础到最后做出来可用的APP只用了一个星期的时间,以下是干货内容.(其实我就是想来求红包的!如果能拿到红包那就是我学计算机挣来的第一桶金了!) 我们最先要上的是成果图,还有在学校发的帖子:http://tieba.baidu.com/

扛住100亿次请求——如何做一个“有把握”的春晚红包系统?(转载)

转载:原文链接 扛住100亿次请求——如何做一个“有把握”的春晚红包系统? 羊年春晚摇一摇活动已经落下帷幕,现在回过头来看看这一全民参与的有趣的活动背后,有着怎样的后台系统?这个系统又是如何被设计与实现出来的? 1.   春晚摇一摇活动形式 在了解这个系统之前,先看看羊年春晚有哪些活动形式?春晚摇一摇复用了摇一摇入口,但提供了全新的界面和交互内容. 在羊年春晚摇一摇界面里,用户摇动手机后,可以看到明星拜年.全家福.好友贺卡等精彩纷呈的活动页:也会有温馨的“休息一下”,或让很多误以为中奖的“挂服务

做一个好看的可翻转登录注册界面

做一个好看的登录注册界面 前言 最近在尝试做网盘,使用的技术栈大概是 .net core + MVC + Mysql + Layui,主要目的是通过这个具体的项目,熟悉熟悉 .net core 开发,.net 的未来就是他了! 我的设想 在完成后端的一部分 建设 之后,我把目光投向了前端--登陆注册,由于这个网盘是用来试手的个人项目,我并不想用曾经用过的制作方式--登录和注册界面分开来做.我试图讲这两个功能合到一个页面上,并且以一种不是很 "Low" 的方式呈现出来. 你也可以认为我只

用Python做一个知乎沙雕问题总结

用Python做一个知乎沙雕问题总结 松鼠爱吃饼干2020-04-01 13:40 前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 数据森麟 PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取http://t.cn/A6Zvjdun 这两天偶然上网的时候,被知乎上一个名为“玉皇大帝住在平流层还是对流层”的问题吸引,本以为只是小打小闹,殊不知这个问题却在知乎上引发了强烈共鸣,浏览次数500W+,

React-Native做一个文本输入框组件

我又回来啦! 由于最近一直在做公司的项目,而且比较急.如今项目已经迭代到第三期,可以缓一缓了... 今天在公司里听前端的说,这个项目本来是用React-Native做的(去年10月份),但是做到一半发现坑太多,就中途放弃了,于是让我们android和iOS重新开发... 作为非常喜欢这个技术的我来说,表示相当的不服. 于是我打算利用闲暇时间做一个一模一样的出来,反正接口我都有(嘻嘻) 说实话,最近一直再用android做开发,而且时间也不宽裕,react-native有点生疏了. 好了,废话不多

做一个手机端页面时,遇到了一个奇怪的问题:字体的显示大小,与在CSS中指定的大小不一致

最近在做一个手机端页面时,遇到了一个奇怪的问题:字体的显示大小,与在CSS中指定的大小不一致.大家可以查看这个Demo(记得打开Chrome DevTools). 就如上图所示,你可以发现,原本指定的字体大小是24px,但是最终计算出来的却是53px,看到这诡异的结果,我心中暗骂一句:这什么鬼! 随后开始对问题各种排查:某个标签引起的?某个CSS引起的?又或者是某句JS代码引起的.通过一坨坨的删代码,发现貌似都不是.我不禁又骂,到底什么鬼!不过中间还是发现了一些端倪:当页面中的标签数量或者文本数

做一个微信语音点播系统

最近在做一个微信项目,接触到了微信公众平台.通过公众平台可以很方便的搭建一个功能完善的移动应用.昨天发现:开发者可使用手机号来申请接口测试帐号,体验高级接口. 这篇文章的应用将使用到高级接口中的语音识别,以及音乐回复接口.通过这两个接口,让大家体验一下语音点歌的魅力. 这个应用简单的来说:就是你向微信公众平台报一首歌名,微信公众平台返回这首歌曲给你听.本文将一步一步教你如何实现这个看似复杂的移动应用. 下面是我申请的测试账号的二维码,大家可以关注一下测试一下效果,不过测试账号的有效期只有一年,最

先做一个“小程序”——关于微信应用号的六大猜想

先做一个“小程序”——关于微信应用号的六大猜想 9月 21 日,苦等了9个多月的时间,应用号终于与我们见面了,命名为「小程序」. 01 为什么推出小程序? 考虑到小程序对整个APP市场的影响,毫无疑问会对现有的APP生态带来一定的冲击.但是,之所以推出小程序,最直接的原因可能是为了构建和扩充微信生态链,让微信更具开放性. 如我们所知,目前微信公众号分为三类: • 服务号,连接人和商品,目前很多电商企业,以及在微信端提供产品和服务的企业都用服务号. • 订阅号,微信官方的定位是阅读,连接人和资讯的