jaki jest kluczowy kod dla shift + tab?


83

Pracuję nad mapowaniem klawiszy. Problem polega na tym, że kiedy naciskam przycisk TAB w dół, przechodzi do następnego pola wprowadzania.

TAB ma klawisz 9, a
DOWN ma klawisz 40

Ale jaki jest kod klucza JavaScript, aby przejść do poprzedniego pola wejściowego (SHIFT + TAB)?

Chcę przejść do następnego łącza; jaki jest kod lub kod dla poprzedniego linku?

Proszę pomóż. Dzięki.


1
Czy kiedykolwiek myślałeś, że Google zabrał ich tutaj? (tak jak ja)
Jesse Roper

Odpowiedzi:


173

Nie ma „keycode”, jest to osobna właściwość obiektu zdarzenia , na przykład:

if(event.shiftKey && event.keyCode == 9) { 
  //shift was down when tab was pressed
}

to, czego chcę, to jeśli kliknę przycisk w górę, powinien przejść do poprzednio wybranej zakładki, więc proszę o sugestię. tahnks
rajesh

@rajesh - Czy możesz trochę wyjaśnić? Twoje pytanie prosi o ich kod do shift + tab, ale chcesz wykryć klawisz w górę?
Nick Craver

tak, czego chcę, jeśli kliknę przycisk p, musi przejść do górnego pola, które ma funkcję, taką jak shift + tab. Dlatego chcę tego samego
rajesh

3
JEST klucz do wydarzenia keydown - Shift + Tab keyCode = 16
Peter Davis

11
Peter, kod klucza 16 jest przeznaczony dla klawisza Shift.
dkubb

15

e.keyCodeod jakiegoś czasu jest przestarzały . Zamiast tego użyj „e.key” KeyboardEvent.key .

Stosowanie:

e.shiftKey && e.key === 'Tab'

Przykład:

function clicked(e) {
    if (e.shiftKey && e.key === 'Tab') {
        // Do whatever, like e.target.previousElementSibling.focus();
    }
}

1
najlepsza odpowiedź. faktyczny przypadek użycia. Szczególnie dla kątowych. jeśli używasz obecnie kodów klawiszy, robisz to źle.
tatsu,


0

w moim przypadku GWT

if(event.isShiftKeyDown() && event.getNativeKeyCode() == KeyCodes.KEY_TAB){
    //Do Something
}
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.