判断访问者的浏览器是否支持JavaScript和Cookies

<a href='http://www.biancheng88.cn/html/2008-11/JavaScript-4.html'>判断访问者的浏览器是否支持JavaScript和Cookies</a><br><br>
                  许多网站需要客户端做许多复杂的工作,比如:用客户端 JavaScript 进行数据合法性校验,这需要客户浏览器的 <br>
JavaScript enabled;使用 Session 变量记录身份等信息,需要浏览器 Cookies enabled。因此,有必要确定用户浏览器<br>
中的这些选项被打开。在我的网站中,我使用了一串简洁的代码实现这些功能,在用户登录时进行检查,如果不符合就不<br>
让登录。在本文中,我就介绍一下这个login页面的写法。<br>
<br>
我们首先用 JavaScript 建立一个 Cookie,然后检查 Cookie 是否存在。由于我们使用 JavaScript 进行这项操作,如果<br>
用户没有打开 <a href="http://www.biancheng88.cn/html/special/2008-11/JavaScript/" title="JavaScript" target=_blank><B>JavaScript</B></a>,但打开了 Cookies 的话,我们仍然会得到 Cookies 没打开的结果。但这与我们的要求并不冲<br>
突,反正我们是要求两者都打开的。(如果你确实只想知道 Cookies 是否 enabled,而不关心 JavaScript,也是有办法<br>
的,我们在另文中讨论)要确定用户是否打开 JavaScript,我在 html 中建立了一个隐藏 from,然后在 onload 事件中<br>
调一个 <a href="http://www.biancheng88.cn/html/special/2008-11/JavaScript/" title="JavaScript" target=_blank><B>JavaScript</B></a> 函数,改变该隐藏 form 的值,如果值被改变了,那就说明 JavaScript 是打开的,否则这个 <br>
<a href="http://www.biancheng88.cn/html/special/2008-11/JavaScript/" title="JavaScript" target=_blank><B>JavaScript</B></a> 函数就不会被调用。(上面两个功能我写在一个函数中)<br>
<br>
首先,我们放一个隐藏 form 在 html 中,用<form>...</form>括起来。(当然,中间还可以有 username/password 的 <br>
from)<br>
<br>
<FORM><br>
  ...<br>
  <input type="hidden" name="cookieexists" value="false"><br>
</FORM>  <br>
<br>
只要它的值是false,就说明浏览器不支持 JavaScript。注意其初始值是 false。我们的 <a href="http://www.biancheng88.cn/html/special/2008-11/JavaScript/" title="JavaScript" target=_blank><B>JavaScript</B></a> 函数将把这个值换<br>
为true。在 BODY 中这样写:<br>
<body οnlοad="cc()">  <br>
<br>
cc()的内容如下:<br>
<script language="<a href="http://www.biancheng88.cn/html/special/2008-11/JavaScript/" title="JavaScript" target=_blank><B>JavaScript</B></a>"><br>
<!-<br>
function cc()<br>
{<br>
/* check for a cookie */<br>
  if (document.cookie == "") <br>
  {<br>
    /* if a cookie is not found - alert user -<br>
     change cookieexists field value to false */<br>
    alert("COOKIES need to be enabled!");<br>
<br>
    /* If the user has Cookies disabled an alert will let him know <br>
        that cookies need to be enabled to log on.*/ <br>
<br>
    document.Form1.cookieexists.value ="false"  <br>
  } else {<br>
   /* this sets the value to true and nothing else will happen,<br>
       the user will be able to log on*/<br>
    document.Form1.cookieexists.value ="true"<br>
  }<br>
}<br>
<br>
/* Set a cookie to be sure that one exists.<br>
   Note that this is outside the function*/<br>
document.cookie = 'killme' + escape('nothing')<br>
// --><br>
</script><br>
<br>
<br>
这个程序能实现的功能是:<br>
1 当用户 JavaScript 打开,而 Cookies 关闭时弹出警告信息<br>
2 当用户 <a href="http://www.biancheng88.cn/html/special/2008-11/JavaScript/" title="JavaScript" target=_blank><B>JavaScript</B></a> 关闭,用户无法直接得到检查结果。(不要忘记,要弹出警告窗口也需要执行 alert 这个 <br>
JavaScript 语句,这时即使检查出来都无法提示),但这时用户的 from 提交后,后台的程序就会发现 cookieexists 这<br>
个域的值是 false,这就说明 <a href="http://www.biancheng88.cn/html/special/2008-11/JavaScript/" title="JavaScript" target=_blank><B>JavaScript</B></a> 关闭了。以后要做什么就不用我说了吧?<br>
 <br>

                 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值