簡體   English   中英

從keyup事件中獲取角色

[英]Getting the character from keyup event

我正在處理keyup事件,需要輸入字符。 當我輸入一個點時,data.keyCode是190,但是當我嘗試使用String.fromCharCode(190)轉換它時,我得到了“¾”符號。

這個參考告訴我190是句號。 那個說我沒有任何機會進行跨瀏覽器按鍵處理。 那么,我該如何正確處理呢?

我正在處理keyup事件,需要輸入字符。

那是不可靠的。 keyup你只獲得keyCode而不是charCode

(如果您考慮一下這是有道理的: charCode與在按鍵中鍵入的字符相關聯,可以使用修飾鍵移動,因此生成與基本鍵不同的字符;在keyupkeydown ,因為這些事件不會立即與鍵入的新字符關聯,也不會生成已知字符。)

所以如果你做的事情依賴於知道是否. 字符是鍵入的,您需要使用keypress事件。

如果您想知道標記的抽象鍵的時間 . / >對一些常見的鍵盤布局被釋放,你可以做到這一點與keyup ,使用keyCode的unixpapa鏈接中列出。 像這樣使用keyCode通常用於游戲和其他功能,其中實際的鍵位置很重要,而不是鍵入時生成的字符。

不幸的是,瀏覽器使得一些keyCodes(包括這一個)變得不一致,因此您必須檢查上面列出的所有可能值,並且您無法可靠地區分主鍵盤周期,小鍵盤周期/刪除鍵和主刪除鍵。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM