DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> WEB網站前端 >> 關於網頁技巧 >> 判斷浏覽器是否支持JavaScript和Cookies
判斷浏覽器是否支持JavaScript和Cookies
編輯:關於網頁技巧     

  判斷訪問者的浏覽器是否支持JavaScript和Cookies

  許多網站需要客戶端做許多復雜的工作,比如:用客戶端 JavaScript 進行數據合法性校驗,這需要客戶浏覽器的JavaScript enabled;使用 Session 變量記錄身份等信息,需要浏覽器 Cookies enabled。因此,有必要確定用戶浏覽器中的這些選項被打開。在我的網站中,我使用了一串簡潔的代碼實現這些功能,在用戶登錄時進行檢查,如果不符合就不讓登錄。在本文中,我就介紹一下這個login頁面的寫法。

  我們首先用 JavaScript 建立一個 Cookie,然後檢查 Cookie 是否存在。由於我們使用 JavaScript 進行這項操作,如果用戶沒有打開 JavaScript,但打開了 Cookies 的話,我們仍然會得到 Cookies 沒打開的結果。但這與我們的要求並不沖突,反正我們是要求兩者都打開的。(如果你確實只想知道 Cookies 是否 enabled,而不關心 JavaScript,也是有辦法的,我們在另文中討論)要確定用戶是否打開 JavaScript,我在 html 中建立了一個隱藏 from,然後在 onload 事件中調一個 JavaScript 函數,改變該隱藏 form 的值,如果值被改變了,那就說明 JavaScript 是打開的,否則這個JavaScript 函數就不會被調用。(上面兩個功能我寫在一個函數中)

  首先,我們放一個隱藏 form 在 html 中,用<form>...</form>括起來。(當然,中間還可以有 username/password 的from)

  <FORM>
  ...
  <input type="hidden" name="cookieexists" value="false">
  </FORM>

  只要它的值是false,就說明浏覽器不支持 JavaScript。注意其初始值是 false。我們的 JavaScript 函數將把這個值換

  為true。在 BODY 中這樣寫:

  <body onload="cc()">

  cc()的內容如下:

以下是引用片段:
<script language="JavaScript">
<!-
function cc()
{
/* check for a cookie */
if (document.cookie == "") 
{
/* if a cookie is not found - alert user -
change cookieexists field value to false */
alert("COOKIES need to be enabled!"); 
/* If the user has Cookies disabled an alert will let him know 
that cookies need to be enabled to log on.*/ 
document.Form1.cookieexists.value ="false" 
} else {
/* this sets the value to true and nothing else will happen,
the user will be able to log on*/
document.Form1.cookieexists.value ="true"
}
}
/* Set a cookie to be sure that one exists.
Note that this is outside the function*/
document.cookie = 'killme' + escape('nothing')
// -->
</script>

  這個程序能實現的功能是:

  1 當用戶 JavaScript 打開,而 Cookies 關閉時彈出警告信息

  2 當用戶 JavaScript 關閉,用戶無法直接得到檢查結果。(不要忘記,要彈出警告窗口也需要執行 alert 這個JavaScript 語句,這時即使檢查出來都無法提示),但這時用戶的 from 提交後,後台的程序就會發現 cookieexists 這個域的值是 false,這就說明 JavaScript 關閉了。以後要做什麼就不用我說了吧?

  

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved