Dalam enjin permainan JavaScript, fungsi lompat dicetuskan dengan menekan kekunci Space , manakala pergerakan kanan dicetuskan dengan menekan kekunci anak panah kanan. Isu timbul apabila pengguna menekan kekunci anak panah kanan dan kemudian kekunci Space. Dalam senario ini, watak melompat dan berhenti bergerak. Matlamatnya adalah untuk menentukan sama ada berbilang kekunci ditekan serentak untuk mengendalikan senario ini dengan berkesan.
Untuk mengesan berbilang ketukan kekunci, kita boleh menggunakan Fungsi Pendengar Acara:
onkeydown = onkeyup = function(event) { // event object contains information about the key pressed const key = event.keyCode; // Use event.key for modern browsers (more reliable) // map stores the pressed keys and their current states (true/false) const map[key] = event.type == "keydown"; };
Coretan kod ini menyediakan pendengar acara keydown dan keyup. Apabila kekunci ditekan, kod kuncinya direkodkan dalam objek peta bersama-sama dengan keadaannya (benar untuk ditekan, palsu untuk dilepaskan).
Untuk menyemak berbilang kekunci ditekan serentak , kita boleh menggunakan logik bersyarat:
if (map[key1] && map[key2] && map[key3]) { // Do something when all three keys are pressed }
Pendekatan ini membolehkan kombinasi kunci yang komprehensif pengesanan.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan Kekunci Ditekan Serentak dalam Permainan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!