v2.5.2
Giriş yap

keypress listener işlemi 2 kez çalışıyor

selim
291 defa görüntülendi

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)
    });
Cevap yaz
Cevaplar (3)
selim
705 gün önce

@munzevi, @yigitergun cevaplarınız için teşekkür ederim ancak keyup denedim sonuç yine aynı. Ayrıca fonksiyonu sildim sadece eventListener var başka hiç bişi yok sonuç yine aynı. React projesinde component içinde kullanıyorum. Ekstra başka hiçbir şey yok.

munzevi
705 gün önce

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.

yigitergun4
705 gün önce

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ı.