Я хочу иметь возможность использовать .toggle (), но привязанный к элементу keydown - jQuery - PullRequest
1 голос
/ 11 июня 2010

Я видел, что jQElement.toggle (fn1, fn2, fn3, fn4) справился бы с задачей, если бы я захотел щелкнуть по элементу.Я хочу, чтобы он последовательно запускал события на событии нажатия клавиш.

Спасибо

1 Ответ

1 голос
/ 11 июня 2010

Вы запускаете .toggle(), вызывая событие click , поэтому просто запустите его в событии keydown, например:

jQElement.keydown(function(e) {
  var keyCode = e.keyCode || e.which; 
  if (keyCode == 9) $(this).click(); //tab key only
});

В качестве альтернативы, просто используйте эту же проверку keyCode и напишите свою собственную функцию .tabToggle(), это не составит труда, если вы посмотрите на источник для .toggle().

Здесь вы можете посмотреть быстрое демо .tabToggle() , отрегулировать при необходимости, но концепция такая же, как у .toggle() уже внутри.

...