判断客户端是否禁用javascript、cookie(转载)

通常情况下很少用户会想到禁用javaScript。所以我们为了实现一些良好的用户体验、达到一些网页效果,或多或少的会用的javaScript、Ajax、cookie等技术。

 

      可是目前存在的Web攻击往往利用这些移动代码(javaScript、cookie、flash、java小程序、ActiveX 等)攻击客户端,来达到非法的目的。于是一些安全意识比较高的用户利用浏览器提供的功能禁用或屏蔽了js、Cookie等。

    

     所以我们有必要判断客户端javascript是否被禁用了,提示用户开启javaScript功能。请看下面的代码:

   

Java代码 复制代码
  1. <div  id="NoJs" >你禁用了javascript。</div>   
  2. <div id="YesJs">body</div>   
  3.   
  4. <script>     
  5.     var NoJs= document.getElementById("NoJs");   
  6.     NoJs.className="close";   
  7.                 //close 的样式代码  .close{ display:none; }   
  8. </script>  
<div  id="NoJs" >你禁用了javascript。</div>
<div id="YesJs">body</div>

<script>  
	var NoJs= document.getElementById("NoJs");
	NoJs.className="close";
                //close 的样式代码  .close{ display:none; }
</script>

 

   这段代码的原理很简单,即如果执行了javascrpt代码,id为NoJs的div被隐藏,否则显示。

 

  下面这段代码是利用javaScript来判断Cookie功能是否已开启:

  

Js代码 复制代码
  1. <script>     
  2.   function CookieEnable()   {   
  3.         var result=false;   
  4.         if(navigator.cookiesEnabled)  return true;   
  5.   
  6.         document.cookie = "testcookie=yes;";   
  7.   
  8.         var cookieSet = document.cookie;   
  9.   
  10.         if (cookieSet.indexOf("testcookie=yes") > -1)  result=true;   
  11.           
  12.          document.cookie = "";   
  13.            
  14.         return result;   
  15. }   
  16.   
  17.       if(!CookieEnable()){   
  18.         alert("对不起,您的浏览器的Cookie功能被禁用,请开启");         
  19.       }   
  20. </script>  
<script>  
  function CookieEnable()   {
        var result=false;
        if(navigator.cookiesEnabled)  return true;

        document.cookie = "testcookie=yes;";

        var cookieSet = document.cookie;

        if (cookieSet.indexOf("testcookie=yes") > -1)  result=true;
       
         document.cookie = "";
        
        return result;
}

      if(!CookieEnable()){
        alert("对不起,您的浏览器的Cookie功能被禁用,请开启");      
      }
</script>

     

     

       以上方法并不是唯一的解决方案、也不是最好的解决办法,这要根据具体情况而定。总之,我觉得我们改善网站的可用性、易用性,应该建立在禁用js、cookie等的情况下开始,不能让Cookie和js影响网站的正常功能。

转载于:https://www.cnblogs.com/Dot-Boy/archive/2009/04/08/1431941.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值