%20%E5%9C%A8%20Web%20%E7%80%8F%E8%A6%BD%E5%99%A8%E4%B8%AD%E8%A2%AB%E5%81%B5%E6%B8%AC%E7%82%BA%E6%B3%A2%E5%BD%A2%E7%AC%A6%E8%99%9F%20(~)%EF%BC%88%E5%8F%8D%E4%B9%8B%E4%BA%A6%E7%84%B6%EF%BC%89.png)
我遇到了 Web 瀏覽器事件處理程序的問題,其中波形符 (~) 和引號 (') 字元的拾取方式錯誤。當我輸入引號時,文字欄位中將輸入引號,但事件處理程序將觸發,就像按下波形符號一樣。
我認為這個 gif 最能表達我想說的話:
如您所見,當按下波形符號/雜湊鍵時,瀏覽器會偵測到引號按下,而當按下引號鍵時,瀏覽器會偵測到波形符號按下。
有沒有辦法解決這個問題,以便觸發正確的按鍵事件?
鍵盤:Corsair K95 RGB Platinum(BrE 佈局)
作業系統:Windows 10 家用版
鍵盤設定:英語(英國)
瀏覽器:Google Chrome 版本 76.0.3809.100(官方版本)(64 位元)
答案1
這不是一個容易「修復」的問題,因為錯誤出在線上解釋器。
有兩種基本的鍵盤佈局:ANSI(幾乎只在美國使用)和 ISO(幾乎其他國家都使用)。
從本質上講,鍵盤的佈局在物理上是不同的,即使在其他「相同」的語言映射上,例如美國英語和英國英語; ANSI 在z & 左邊沒有鍵,因此它將反引號` 和波浪號~ 放在大寫鎖定上方,1 的左側,其中ISO [英國] 鍵盤將有反引號` 和邏輯否定符號Ø [Windows] 或§和± [Mac ]。管材|和反斜杠 \ 被移到括號鍵的右側,ISO 上沒有對應的鍵,而是低了一行。此鍵在 Mac 上映射,但在 Win 上不映射。
@ 和 " 通常也會交換 [Win 但不是 Mac]。
維基百科有各種佈局僅適用於這裡是 QWERTY 鍵盤包括 Mac/Win 差異。
這是在我們討論非英語鍵盤的複雜性之前,甚至 QWERTY 也會發生變化,變成 AZERTY 或 QWERTZ 等。
維基百科 - 鍵盤佈局在某種程度上解釋了不同語言佈局中的無數差異。
任何線上鍵盤解釋器都需要了解所有這些,以便準確測試每個可能的按鍵組合。
以下有一些差異 - [圖片來自維基百科,QWERTY 頁面。
美國標準協會
英國 ISO - Windows
英國 ISO - Mac