keypress listener işlemi 2 kez çalışıyor
Merhaba, keypress ile kullanıcının klavyeyi kullanıp kullanmadığını anlamak istiyorum ancak bir kez tıkladığında 2 kez tıklamışım gibi davranıyor. Bunun nedeni nedir ?
window.addEventListener('keypress', e => {
// Bir kez klavyeye basıyorum, buraya 2 kez giriyor
startExp(e)
});
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (3)
startexp fonksiyonu dinlemenin dışında çağrılmış durumda olabilir. ayrıca tuşa basıldığı süre zarfında keypress sürekli olarak çalışacaktır. bunun yerine duruma uygun ise keyup kullanman daha yerinde olur, tuşa basıldıktan sonra değil tuşa yapılan vurgu tamamlandıktan yani tuş bırakıldıktan sonra çalışır.
window.addEventListener('keypress', e => {
console.log(e.key);
});
yüksek ihtimalle yazdığın startExp fonksiyonu ile alakalı bir sorun böyle yapıştırıp denediğimde bir sorun olmadı teker teker çalıştı.