Portál AbcLinuxu, 5. května 2025 08:08

Dotaz: jQuery a timeout na vynulovani promenne

27.5.2024 06:43 tom
jQuery a timeout na vynulovani promenne
Přečteno: 625×
Odpovědět | Admin
Zdravim,

pouzivam v jQuery kod, ktery me presmeruje do vyhledavaciho policka, kdyz zmacknu 2x ESC. Nedavno jsem si kod upravil tak, aby mi zaroven zrusil focus u input policka, kdyz potrebuji treba posunout stranku a nechce se mi natahovat pro mys:
(function($) {
    $(document).ready(function() {

          var key_pressed_index = 0;
          
          $(document).keyup(function(e) {
              if (e.keyCode == 27) {
                  ++key_pressed_index;
                  
                  $(':focus').blur();
                  
                  if (key_pressed_index == 2) {
                      $('.search').focus();
                      key_pressed_index = 0;
                  }
              }
          });

    });
})(jQuery);
Jenomze ted se mi pri zruseni focusu samozrejme nastavi key_press_index na 1, takze kdyz chci podruhe pouze zrusit focus u input policka, ESC me misto toho hodi nahoru do vyhledavaciho policka.

Potreboval bych tedy docilit napr. toho, aby se mi po 2 vterinach key_press_index vynuloval. Ale nedari se mi najit jak

Dekuji za nakopnuti spravnym smerem

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

27.5.2024 13:40 tom
Rozbalit Rozbalit vše Re: jQuery a timeout na vynulovani promenne
Odpovědět | | Sbalit | Link | Blokovat | Admin
Zdravim,

tak jsem to zatim vyresil tak, ze jsem nakonec te podminky, ktera zkouma zda byl zmacknut ESC pridal toto:
else {
    key_pressed_index = 0;
}
Protoze vetsinou kdyz z formulare vyskocim ESCapem, tak potom mackam kurzorove klavesy nebo PgUp/PgDn cimz si ten index vynuluji

Řešení 1× (z_sk)
27.5.2024 14:43 tom
Rozbalit Rozbalit vše Re: jQuery a timeout na vynulovani promenne
Odpovědět | | Sbalit | Link | Blokovat | Admin
Jenom doplnim (kdyby nekdo resil neco podobneho)

Jeste jsem na konec skriptu pripsal toto:
$(document).scroll(function(e) {
    key_pressed_index = 0;
});

$(document).click(function(e) {
    key_pressed_index = 0;
});

$(document).mousemove(function(e) {
    key_pressed_index = 0;
});
A uz se to chova jak potrebuji. Proste jednim ESC to vyskoci z "inputu" a dvema ESC to skoci do vyhledavaciho policka

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.