当前位置: 代码迷 >> JavaScript >> chrome下怎么用js设置cookie
  详细解决方案

chrome下怎么用js设置cookie

热度:148   发布时间:2013-03-26 09:54:34.0
chrome下如何用js设置cookie
chrome处于安全性考虑不能设置本地cookie,导致document.cookie=""这样的语法都失效的。网上说要用online-cookie,但是又都没讲清楚online-cookie要怎么样,小弟对这个online-cookie完全不懂,我都是用js里的document.cookie=""这样直接赋值的,但是这个在chrome下不起作用,期望路过的大神们能指点一二呀!!!chrome下用js设置cookie的代码要怎么写呀???

------解决方案--------------------
//新建cookie。
        //hours为空字符串时,cookie的生存期至浏览器会话结束。hours为数字0时,建立的是一个失效的cookie,这个cookie会覆盖已经建立过的同名、同path的cookie(如果这个cookie存在)。
        function setCookie(name, value, hours, path) {
            var name = escape(name);
            var value = escape(value);
            var expires = new Date();
            expires.setTime(expires.getTime() + hours * 3600000);
            path = path == "" ? "" : ";path=" + path;
            _expires = (typeof hours) == "string" ? "" : ";expires=" + expires.toUTCString();
            document.cookie = name + "=" + value + _expires + path;
        }
        //获取cookie值
        function getCookieValue(name) {
            var name = escape(name);
            //读cookie属性,这将返回文档的所有cookie
            var allcookies = document.cookie;
            //查找名为name的cookie的开始位置
            name += "=";
            var pos = allcookies.indexOf(name);
            //如果找到了具有该名字的cookie,那么提取并使用它的值
            if (pos != -1) {                                             //如果pos值为-1则说明搜索"version="失败
                var start = pos + name.length;                  //cookie值开始的位置
                var end = allcookies.indexOf(";", start);        //从cookie值开始的位置起搜索第一个";"的位置,即cookie值结尾的位置
                if (end == -1) end = allcookies.length;        //如果end值为-1说明cookie列表里只有一个cookie
                var value = allcookies.substring(start, end); //提取cookie的值
  相关解决方案