Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.06.2012, 16:12
Интересующийся
Отправить личное сообщение для AllanZ Посмотреть профиль Найти все сообщения от AllanZ
 
Регистрация: 15.04.2011
Сообщений: 15

Получить код нажатой кнопки при клике.
Здравствуйте! Помогите пожалуйста решить задачу, нужно по событию onclick вычислить код нажатой кнопки (Кнопка + Клик). Проблема решения в том что при нажатии event.which выдает код кнопки мыши (1) и как обойти этот барьер я не знаю. Гуглил.

PS: на сайте есть JQUERY.
Ответить с цитированием
  #2 (permalink)  
Старый 03.06.2012, 16:28
х.з
Посмотреть профиль Найти все сообщения от dmitriymar
 
Регистрация: 21.11.2010
Сообщений: 4,589

ну наверное, для кнопок отслеживать события нажатия кнопок клавиатуры, а не события мыши.
Ответить с цитированием
  #3 (permalink)  
Старый 03.06.2012, 16:32
Аватар для Раед
''
Отправить личное сообщение для Раед Посмотреть профиль Найти все сообщения от Раед
 
Регистрация: 11.12.2011
Сообщений: 636

Алгоритм такой.
При событии keypress/kedown сохраняете код клавиши в переменную и при keyup удаляете.
А при клике уже проверяете значение переменной
Ответить с цитированием
  #4 (permalink)  
Старый 03.06.2012, 17:21
Интересующийся
Отправить личное сообщение для AllanZ Посмотреть профиль Найти все сообщения от AllanZ
 
Регистрация: 15.04.2011
Сообщений: 15

Спасибо за ответы. Раед, Вы действительно помогли. Видимо я слишком много думал об этой задаче)
Ответить с цитированием
  #5 (permalink)  
Старый 03.06.2012, 17:50
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,745

Сообщение от Раед
При событии keypress/kedown сохраняете код клавиши в переменную и при keyup удаляете.
Последнюю часть наверное нужно опустить, так как переменная после отпускания клавиши никогда не будет хранить код клавиши.
Ответить с цитированием
  #6 (permalink)  
Старый 03.06.2012, 18:21
Интересующийся
Отправить личное сообщение для AllanZ Посмотреть профиль Найти все сообщения от AllanZ
 
Регистрация: 15.04.2011
Сообщений: 15

bes,
Вы действительно правы.
Ответить с цитированием
  #7 (permalink)  
Старый 03.06.2012, 18:47
Аватар для Раед
''
Отправить личное сообщение для Раед Посмотреть профиль Найти все сообщения от Раед
 
Регистрация: 11.12.2011
Сообщений: 636

Сообщение от bes
так как переменная после отпускания клавиши никогда не будет хранить код клавиши.
Всмысле
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<script type="text/javascript">
document.onkeydown = function(e) {
 a = e.keyCode;
}
document.onkeyup = function() {
 a = null;
}
document.onclick = function() {
 if (typeof a=='number') alert(a);
}
</script>
</head><body>
</body></html>

Что здесь можно опустить?
Ответить с цитированием
  #8 (permalink)  
Старый 03.06.2012, 18:54
Аватар для bes
bes bes вне форума
Профессор
Отправить личное сообщение для bes Посмотреть профиль Найти все сообщения от bes
 
Регистрация: 22.03.2012
Сообщений: 3,745

Раед, я лишь уточнил, что при вашем способе код нажатой клавиши будет храниться в переменной только до момента отпускания этой клавиши, то есть кликать надо, пока клавишу не отпустили, а иначе код не получить.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
При клике ссылки, открыть DIV блок, и при клике ещё раз, закрыть его Simon Общие вопросы Javascript 59 28.05.2017 18:31
Переадресация при клике по Flash Player maxspee Общие вопросы Javascript 2 24.02.2012 04:48
Переопределение поведения при клике на ссылку dyosick Events/DOM/Window 2 07.02.2012 18:56
Dojo может подгружать информацию из пунктов меню только при клике на выбранный пункт? vlad275 Dojo toolkit 0 30.10.2008 15:56
При первом клике список не раскрывается. lancer Элементы интерфейса 1 30.03.2008 17:24