Kode tombol Escape di JavaScript

Untuk Escape, event.key adalah Escape, event.code adalah Escape, dan keyCode yang sudah usang adalah 27. Tekan tombol apa pun di Key Code Finder untuk melihat nilainya secara langsung.

Diperbarui

PropertiNilai
event.keyEscape
event.codeEscape
event.keyCode / which (usang)27

Cara mendeteksi Escape

document.addEventListener('keydown', (event) => {
  if (event.key === "Escape") {
    // Escape was pressed
  }
});

Gunakan event.key untuk merespons arti tombol (mengikuti tata letak keyboard) dan event.code untuk posisi fisiknya, misalnya WASD di game. keyCode dan which sudah usang: keduanya masih berfungsi, tetapi nilainya berbeda antar browser dan tata letak.

Cara browser menangani Escape

Escape adalah cara standar untuk menutup dialog, menu, dan popover. Elemen <dialog> bawaan akan tertutup saat Escape ditekan dan memicu event cancel. Browser juga memakai Escape untuk keluar dari layar penuh, dan penekanan tombol tersebut biasanya tidak diteruskan ke halaman.

Di React

<input onKeyDown={(e) => { if (e.key === "Escape") { /* … */ } }} />

Pertanyaan yang sering diajukan

Berapa keyCode untuk Escape?
27. Namun properti ini sudah usang, jadi di kode baru gunakan event.key (“Escape”) atau event.code (Escape).
Apa perbedaan event.key dan event.code?
event.key adalah karakter atau aksi yang dihasilkan tombol dengan tata letak saat ini; event.code adalah posisi fisik tombol, yang sama di setiap tata letak.
Sebaiknya pakai keydown atau keypress?
keydown. Event keypress sudah usang dan tidak terpicu untuk tombol yang tidak menghasilkan karakter, seperti Escape atau tombol panah.