温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》
  • 首页 > 
  • 教程 > 
  • 开发技术 > 
  • JS开发通过设置cookie实现第一次进入首页展示弹窗广告,再次进入隐藏广告

JS开发通过设置cookie实现第一次进入首页展示弹窗广告,再次进入隐藏广告

发布时间:2020-07-21 14:45:25 来源:网络 阅读:384 作者:pmlinjian 栏目:开发技术

<div class="dn car-activity-opcity"></div>

<div class="dn car-activity-module">

<a href="javascript:var bd_close;" class="close-activity" title="关闭" id="T-close-chezhujie" otitle="关闭-车主节首页弹窗" otype="button">关闭</a>

<a href="http://www.xxx.com/huiyuan/2016czj.shtml" class="car-activity-link-a" title="立即参与" id="T-lijicanyu" otitle="立即参与-车主节" otype="button" id="T-lijicanyu">立即参与</a>

<a href="http://www.xxx.com/cpchexian/campaign/zhitong/201601.shtml" class="car-activity-link-b" title="享车险福利" otitle="享车险福利-车主节" otype="button" target="_blank" id="T-xiangchexianfuli">享车险福利</a>

<a href="http://www.xxx.com/cpbaoxian/official/chezhujiehd/index.shtml" class="car-activity-link-c" title="享其他福利" otitle="享其他福利-车主节" otype="button" target="_blank" id="T-xiangqitafuli">享其他福利</a>

</div>


<script type="text/javascript">

    $(".car-activity-module .close-activity").click(function(){

            $(".car-activity-opcity").fadeOut();

            $(".car-activity-module").fadeOut();

    });


    if(getCookieValue("carPopUp")!="ed"){

        $(".car-activity-opcity").show();

        $(".car-activity-module").show();

        setCookie("carPopUp","ed",30,"/");

    }

    function setCookie(name,value,days,path){

        var name = escape(name);

        var value = escape(value);

        var expires = new Date();

        expires.setTime(expires.getTime() + days * 24*60*60*1000);

        path = path =="" ? "":";path=" + path;

        _expires = (typeof days) == "string" ? "": ";expires=" + expires.toUTCString();

        // document.cookie = name + "=" + value + _expires + path;

        document.cookie = name + "=" + value + path;

    }

    function getCookieValue(name){

        var name = escape(name);

        var allcookies = document.cookie;

        name += "=";

        var pos = allcookies.indexOf(name);

        if(pos != -1){

            var start = pos + name.length;

            var end = allcookies.indexOf(";",start);

            if(end == -1){

                end = allcookies.length;

            }

            var value = allcookies.substring(start,end);

            return unescape(value);

        } else{

            return "";

        }

    }

</script>



资料:


格式:cookieName=cookieValue;expires=expiresDate;path=URLpath;domain=siteDomain//cookie名称,失效日期,储存URL,储存域值; 

Cookie(复数形态Cookies),中文名称为小型文本文件或小甜饼[1],指某些网站为了辨别用户身份而储存在用户本地终端(Client Side)上的数据(通常经过加密)


1 cookie会被附加在每个HTTP请求中,所以无形中增加了流量。

2 由于在HTTP请求中的cookie是明文传递的,所以安全性成问题。(除非用HTTPS)

3 Cookie的大小限制在4KB左右。对于复杂的存储需求来说是不够用的。

cookie最大长度4086


Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie。

内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的。硬盘Cookie保存在硬盘里,有一个过期时间,除非用户手工清理或到了过期时间,硬盘Cookie不会被删除,其存在时间是长期的。所以,按存在时间,可分为非持久Cookie和持久Cookie。


内存cookie,是指没有设在cookie的Expires的属性,此时cookie将停留在客户端的内存中,只有在该IE窗口中从“文件-新建- 窗口”打开的新的IE窗和由form的target属性为_blank产生的新的IE窗口才共享同一个cookie信息。IE,Chome的选项卡都共享同一个cookie信息。


硬盘cookie,是指在你设置了cookie的Expires属性,此时cookie将保存到你的硬盘上,Win7是在C:\Users\Administrator\AppData\Roaming\Microsoft\Windows\Cookies 下面(如果你是Administrator账号的话)。此时所有的窗口将共享同一个名字的cookie。


针对内存cookie,用fiddler可以看到cookie 没有 exprires这个属性,只要关掉ie再重新打开页面将会丢失(注:如果不关掉原来的ie窗口,新打开ie访问页面cookie还是会在)。


如果内存cookie没有指定域,那么可以在多个不同的站点间共享内存cookie

 MVC测试代码 Controller 文件如下:


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI