利用Keydown事件阻止使用者輸入

2021-09-06 14:03:24 字數 858 閱讀 6912

先了解下各事件的區別

意義keypress主要用來接收字母、數字等ansi字元。keydown 和 keyup 事件過程通常可以捕獲鍵盤除了prscrn所有按鍵 (這裡不討論特殊鍵盤的特殊鍵)

keypress 只能捕獲單個字元,keydown 和 keyup 可以捕獲組合鍵

keypress 不顯示鍵盤的物理狀態(shift鍵),而只是傳遞乙個字元。keypress 將每個字元的大、小寫形式作為不同的鍵**解釋,即作為兩種不同的字元。

keydown 和 keyup 不能判斷鍵值字母的大小,用兩種引數解釋每個字元的大寫形式和小寫形式:keycode — 顯示物理的鍵(將 a 和 a 作為同乙個鍵返回)和 shift —指示 shift + key 鍵的狀態而且返回 a 或 a 其中之一

keypress 不區分小鍵盤和主鍵盤的數字字元,keydown 和 keyup 區分小鍵盤和主鍵盤的數字字元

keydown、keyup事件是當按下 ( keydown ) 或鬆開 ( keyup ) 乙個鍵時發生的。由於一般按下鍵盤的鍵往往會立即放開(這和滑鼠不同),所以這兩個事件使用哪個差別不大。而且,up和其他兩者還有乙個區別:要判斷key修改後的狀態必須用up

我們可以利用keydown事件來阻止使用者的輸入,比如某輸入域只能輸入數字

鍵盤上數字鍵的keycode

**如下

var input = document.getelementbyid('number_ipt')

input.onkeydown = function(e)

// 僅能輸入數字

function isnumber(keycode)

效果:

相關:

Key Down 與Key Up 事件說明

key down 事件 當使用者在乙個元素上第一次按下鍵盤上字母鍵的時候,就會觸發它。使用上非常簡單,與很多基本事件引數處理保持一致,這裡再使用就不在重複。key up 事件 當使用者在乙個元素上按下鍵盤上字母鍵的時候,就會觸發它。與key down 不同的是,你按下去的瞬間就可以觸發它,而不用再一...

阻止事件冒泡,阻止預設事件

阻止事件冒泡 html 冒泡事件測試 js table click function td click function span click function e 如果js中不加 e.stoppropagation 那輸出結果就依次為span td table。這就叫事件冒泡。就是從下到上,從裡到...

JS阻止事件冒泡,阻止預設事件

1 event.stoppropagation 阻止冒泡事件,不讓事件向documen上蔓延,但是預設事件任然會執行,當你掉用這個方法的時候,如果點選乙個鏈結,這個鏈結仍然會被開啟 2 event.preventdefault 阻止預設事件,呼叫此方法是,鏈結不會被開啟,但是會發生冒泡,冒泡會傳遞到...