Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 13.04.2013, 15:06
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

как сделать событие клавиатуры?
комрады, чота весьма туплю и не могу по учебнику понять как сделать

нужно чтобы при нажатии определенной клавиши, например esc, программа делала некоторые свои действия

то есть нет никаких кнопок и форм - горячая клавиша запускает некую подпрограмму

спс
Ответить с цитированием
  #2 (permalink)  
Старый 13.04.2013, 16:09
Аватар для SkyLight
Злюка-бобер
Отправить личное сообщение для SkyLight Посмотреть профиль Найти все сообщения от SkyLight
 
Регистрация: 21.03.2010
Сообщений: 438

http://learn.javascript.ru/keyboard-events
__________________
In WEB We Trust
У всех есть своя темная сторона...
Ответить с цитированием
  #3 (permalink)  
Старый 13.04.2013, 16:16
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

Сообщение от SkyLight Посмотреть сообщение
http://learn.javascript.ru/keyboard-events
да, вот по этому учебнику и не могу понять как, и фленаган не научил ((

я тупой!
Ответить с цитированием
  #4 (permalink)  
Старый 13.04.2013, 16:27
Аспирант
Отправить личное сообщение для Ervin Посмотреть профиль Найти все сообщения от Ervin
 
Регистрация: 19.03.2013
Сообщений: 84

function handleKey(evt) {
   console.log(evt.keyCode || evt.which);
}

window.onkeydown = handleKey;
Ответить с цитированием
  #5 (permalink)  
Старый 13.04.2013, 16:53
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

Сообщение от Ervin Посмотреть сообщение
function handleKey(evt) {
   console.log(evt.keyCode || evt.which);
}

window.onkeydown = handleKey;
я же специально упомянул что я тупой ))
я не понимаю как это работает - ПОЧЕМУ ВМЕСТО EVENT - EVT ?
и в вопросе моем была клавиша esc

Последний раз редактировалось macdack, 13.04.2013 в 23:40.
Ответить с цитированием
  #6 (permalink)  
Старый 13.04.2013, 20:35
Аватар для SkyLight
Злюка-бобер
Отправить личное сообщение для SkyLight Посмотреть профиль Найти все сообщения от SkyLight
 
Регистрация: 21.03.2010
Сообщений: 438

Вам никто не даст готовое решение. А вопросы вы не задаете
__________________
In WEB We Trust
У всех есть своя темная сторона...
Ответить с цитированием
  #7 (permalink)  
Старый 14.04.2013, 10:47
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

практически разобрался но есть вопросы

var ч = function(event) {
if (event.keyCode == 18) {alert("esc")}
};
window.onkeydown = ч;


не понимаю почему не работает когда написано в таком порядке -
window.onkeydown = ч; 

var ч = function(event) {
if (event.keyCode == 18) {alert("esc")}
};


и что такое это объект вызова event - где он лежит?
не атрибут ли window - window.event ?
обязательно ли его передавать в качестве аргумента функции обработчика ? или можно из этой функции к нему обратиться ?

Последний раз редактировалось macdack, 14.04.2013 в 11:00.
Ответить с цитированием
  #8 (permalink)  
Старый 14.04.2013, 10:56
Аватар для SkyLight
Злюка-бобер
Отправить личное сообщение для SkyLight Посмотреть профиль Найти все сообщения от SkyLight
 
Регистрация: 21.03.2010
Сообщений: 438

Сообщение от macdack
не понимаю почему не работает когда написано в таком порядке
Учите порядок выполнения операций, т.к. оно и не должно так работать.
Сообщение от macdack
и что такое это объект вызова event - где он лежит?
Этот объект передается первым в обработчики событий и является по сути таким себе "описанием" произошедшего события.
Сообщение от macdack
ПОЧЕМУ ВМЕСТО EVENT - EVT
Потому что это просто аргумент, аргументы вы можете называть как угодно. Кстати, очень часто вы можете встретить вообще просто "е". Это просто общепринятое соглашение по именованию. такое же, как разрешение использовать примитивы "i", "j", "k" в качестве индексов при итерации по массивам.

Из всех ваших вопросов становится понятно, что того же Фленагана вы читали невнимательно. Ну или здесь на сайте учебник почитайте.
__________________
In WEB We Trust
У всех есть своя темная сторона...
Ответить с цитированием
  #9 (permalink)  
Старый 14.04.2013, 11:09
Аватар для macdack
партизан, доктор
Отправить личное сообщение для macdack Посмотреть профиль Найти все сообщения от macdack
 
Регистрация: 29.06.2011
Сообщений: 221

и что такое это объект вызова event - где он лежит?
не атрибут ли window - window.event ?
обязательно ли его передавать в качестве аргумента функции обработчика ? или можно из этой функции к нему обратиться ?
Ответить с цитированием
  #10 (permalink)  
Старый 14.04.2013, 12:01
Аватар для Hekumok
Отправить личное сообщение для Hekumok Посмотреть профиль Найти все сообщения от Hekumok
 
Регистрация: 04.06.2012
Сообщений: 513

Сообщение от macdack
var ч = function(event) {
if (event.keyCode == 18) {alert("esc")}
};
window.onkeydown = ч;


не понимаю почему не работает когда написано в таком порядке -
window.onkeydown = ч; 

var ч = function(event) {
if (event.keyCode == 18) {alert("esc")}
};
читайте
Сообщение от macdack
и что такое это объект вызова event - где он лежит?
Нигде он не лежит, он просто передается в обработчик при вызове события
Сообщение от macdack
не атрибут ли window - window.event ?
В нормальных браузерах - нет, в ишаке - да
Сообщение от macdack
обязательно ли его передавать в качестве аргумента функции обработчика? или можно из этой функции к нему обратиться ?
Нет, по другому к нему никак нельзя обратиться
читайте
__________________
★ ²º¹³ ☆
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как сделать чтобы в popup окне показывалось картинка? sarik Общие вопросы Javascript 31 15.03.2013 13:12
как сделать так чтобы в popup окне принимался css стили,? sarik Общие вопросы Javascript 2 12.03.2013 10:24
filter(this,this) как правильно сделать? Smip jQuery 5 23.02.2013 03:07
Как сделать? При выходе мышкой за пределы окна браузера, начинает грузится другая стр alb Events/DOM/Window 13 01.09.2010 12:19
Как отлаживать события? Или как сделать трассировку вызовов функций? gennad Events/DOM/Window 1 18.08.2010 13:21