有網友問說能不能做出那種要按某些特定鍵後轉到某網頁去?這感覺有點像是金手指一樣,輸入正確了就有些秘密關卡出現。雖然不建議用JavaScript來做這種驗證(因為不安全),不過應該也沒也什麼人閒到去看原始碼吧!
要做這種功能其實很簡單低,讓我們先來看一下Body的部份吧~:
放了一個TextArea是為了教學顯示資訊看的啦,到時候若要把語法放到網頁中的話,可以不用這個。
接著才是重點,JavaScript:
JavaScript可以分成三個部份來看。
第一是設定的部份:用變數passwd來記錄密碼myHref則是用來儲存欲轉換的網頁、key_array陣列是用來存放所輸入的鍵、最下面一行的onKeypress是要讓當在網頁中按下按鈕時,要觸發那個函式用的。
第二是記錄的部份:rec函式是用來把所按下的按鈕記錄在key_array陣列裡面,並判斷當key_array陣列長度若跟passwd相同時,便呼叫另一個驗證的函式。如何取得使用者按下什麼按鈕呢?答案就是event.keyCode。不過所得到的會是數字喔,像A就是65、B就是66..但a是97喔。在範例中的TextArea就是要讓各位看按下鈕是什麼數字用的。
第三是驗證的部份:用check函式一一比對passwd跟key_array陣列中的字是否相同,若相等就轉頁到變數myHref所設定的網頁去;若有一個字不相等,就清空key_array陣列中的值並跳離驗證。其中我用了變數isTrue來儲存驗證的結果是否相同。
每一行Code都有寫註解啦,所以應該都還看的懂吧!
各位可以試著執行一下範例,並看TextArea中的訊息。
passwd設為abcd,A是97..所以依序是98、99、100,若驗證合格就顯示true。
範例瀏覽:
http://abgne.myweb.hinet...0012.html以上內容於2005/11/14發表在小弟的Blog裡
http://blog.xuite.net/abgne/diary1/4378798