簡體   English   中英

Javascript的某些警報會自動關閉?

[英]Certain alerts from Javascript are automatically closing?

我打算實現對按鍵的響應,所以我開始使用:

window.addEventListener('keydown', function(e) {
    alert(e.keyCode)
}, true)

它適用於大多數鍵。 當我按一個鍵時,它會提示鍵代碼。 (當然,這不是最終的設計;只是一個測試,看它是否可以使調試更容易。)

但是,我發現了一些有趣的行為。 當我使用空格鍵時,它做的事情很奇怪。

當我按空格鍵時,會出現數字為“ 32”(空格鍵)的警報。 但是,當我釋放鑰匙時,警報會自動關閉!

我發現使用Enter鍵,必須再次按一下以關閉警報。 雖然沒有空間。

為什么是這樣?

因為瀏覽器使用空格鍵來關閉警報消息(例如回車)。

說明:有趣的行為是瀏覽器使用空格鍵來關閉警報,因此您只會看到在keydown / keyup之間的對話框(在本示例中不重復空格鍵的情況下)

您將在按下keydown時觸發警報,這意味着當警報已經存在時,警報按鈕可能會偵聽的keyup事件就會發生,從而立即有效地刪除警報。

如果改為在啟動鍵盤時觸發警報,則不會有問題。

暫無
暫無

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

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