判断客户浏览器是否支持cookie的几种方法

2019-02-14 建站知识 浏览 手机预览
文章来源:http://www.imtr.cn/html/n224.html

Cookie 技术诞生以来,它就成了广大网络用户和 Web 开发人员争论的一个焦点。有一些网络用户,甚至包括一些资深的 Web 专家也对它的产生和推广感到不满,这并不是因为 Cookie 技术的功能太弱或其他技术性能上的原因,而是因为 Cookie 的使用对网络用户的隐私构成了危害。因为 Cookie 是由 Web 服务器保存在用户浏览器上的小文本文件,它包含有关用户的信息。本文介绍三种常用的方式来判断用户的浏览器是否允许Cookie活动。

第一种方法:

<script>
function check() {
    if (window.navigator.cookieEnabled) {
        alert("Cookie正常使用!");
        return true;
    } else {
        alert("浏览器配置错误,Cookie不可用!");
        return false;
    }
}
check();
</script>

第二种方法:

SetCookie('cookie_test','1');
var cookie_test = getCookie('cookie_test');
if( '1' != cookie_test)
{
 alert('不支持');
}else
{
 alert('支持');
}
 
function SetCookie(name,value)//两个参数,一个是cookie的名子,一个是值
{
   var Days = 30; //此 cookie 将被保存 30 天
   var exp = new Date(); //new Date("December 31, 9998");
   exp.setTime(exp.getTime() + Days*24*60*60*1000);
   document.cookie = name + "="+ escape (value) + ";expires=" + exp.toGMTString();
}
function getCookie(name)//取cookies函数   
{
   var arr = document.cookie.match(new RegExp("(^| )"+name+"=([^;]*)(;|$)"));
   if(arr != null) return unescape(arr[2]); return null;
 
}
function delCookie(name)//删除cookie
{
   var exp = new Date();
   exp.setTime(exp.getTime() - 1);
   var cval=getCookie(name);
   if(cval!=null) document.cookie= name + "="+cval+";expires="+exp.toGMTString();
}

第三种方法:

var cookieEnabled=(navigator.cookieEnabled)? true : false
//判断cookie是否开启
 
//如果浏览器不是ie4+或ns6+
if (typeof navigator.cookieEnabled=="undefined" && !cookieEnabled){ 
document.cookie="testcookie"
cookieEnabled=(document.cookie=="testcookie")? true : false
document.cookie="" //erase dummy value
}


原文地址:http://www.imtr.cn/html/n224.html
  • 如果你的问题还没有解决,可以点击页面右侧的“ ”,站长收到问题后会尽快回复解决方案到你的邮箱。
  • 创造始于问题,有了问题才会思考,有了思考,才有解决问题的方法,才有找到独立思路的可能。 —— 陶行知