JQuery 'düyməsinə basaraq' Chrome'da bəzi düymələr üçün işləmir. Necə işləmək olar?

Istifadəçi Esc basıldığında Esc aradan qaldıran bir tuş vuruşu funksiyasını tətbiq etməyə çalışıram. Firefox və IE üçün aşağıdakı kod ilə işləyir:

 $("body").keypress(function(e) { alert("any key pressed"); if (e.keyCode == 27) { alert("escape pressed"); } }); 

Hər hansı bir düyməni basarsam, ilk alert göstərilir və Escape'i silmək üçün ikinci alert göstərilir.

Ancaq bu Chrome ilə işləmir. Hər hansı bir məktub düyməsini basdığımda, lakin mən Escape, Tab, Space və ya nömrələrdən hər hansı birinə basdığımda deyil, ilk alert həmişə göstərilir.

Niyə bu idi? Bu tuş vuruşlarına cavab vermək üçün Chrome'u almaq üçün bir yol varmı?

54
10 окт. DaveDev tərəfindən 10 oktyabrda təyin olundu . 2010-10-10 19:14 '10 at 19:14 2010-10-10 19:14
@ 5 cavab

keydown istifadə edin.

106
10 окт. Cavab SLaks 10 oktyabr. 2010-10-10 19:17 '10 at 7:17 pm 2010-10-10 19:17

keydown istifadə edin . Klikdə ESC ilə işləmir (digər brauzerlərdə əmin deyil).

border=0
 $(newTag).keydown(function(e) { //keypress did not work with ESC; if (event.which == '13') { ProfilePage.saveNewTag(search_id, $(newTag).val()); } else if (window.event.which){ $(newTag).remove(); } }); 
15
30 марта '11 в 1:26 2011-03-30 01:26 Cavab 30 mart 2011-ci il tarixində 1:26 2011-03-30 01:26 ayı verilir

ESC düyməsinə görə:

 $(document).keydown(function(e) { if(e.keyCode == 27) {  } } 

"L" kimi məktub düymələri üçün:

 $(document).keypress(function(e) { if(e.which == 108) { } }); 

Chrome və Firefox-da işləyir

2
04 февр. Cavab Dylan Foregger 04 fevral. 2013-02-04 09:50 '13 'da 9:50' da 2013-02-04 09:50

İkinci xəbərdarlıqdan sonra da əlavə edin

 e.preventDefault(); 

Bu, hadisənin default fəaliyyətinə mane olur.

Burada bu metod haqqında ətraflı məlumat əldə edin.

Sizin kodunuz bənzəyir

 $("body").keypress(function(e) { alert("any key pressed"); if (e.keyCode == 27) { alert("escape pressed"); e.preventDefault(); }}); 
1
06 нояб. Cavab 06 fevral tarixində ppolyzos verilir 2012-11-06 13:32 '12 at 13:32 2012-11-06 13:32

JQuery.hotkey js faylını istifadə edərək, "Sort" düyməsini istifadə edə bilərsiniz

 $(document).bind('keydown', 'esc', function(){ }); 
0
20 дек. Cavab ghodasara keval tərəfindən verilir 20 dekabr . 2016-12-20 09:30 '16 saat 09:30 'da 2016-12-20 09:30' a qədər

tags ilə bağlı digər suallar və ya bir sual