ESC button keydown
$(document).keydown(function(e) { if( e.keyCode === 27 ) { $('#button').click(); return false; } }); Я хочу сделать алиас клику по кнопке в виде нажатия на клавишу escape, есть 2 вопроса: 1. Если я что-то пишу в текстовом поле, затем нажимаю escape, то "нажатие" кнопки действительно происходит, повторное нажатие на escape к повторному "нажатию" уже не приводит: как будто теряется "фокус" на document, т.к. если кликнуть левой кнопкой мыши по странице, затем опять нажать escape, то всё OK. What the fuck? 2. Нажатие кнопки приводит к AJAX-запросу, который почему-то не происходит (в firebug запрос подсвечен красным, запрос якобы посылается, но ответ никакой не приходит, рядом с запросом красный крестик), если в данном коде опустить "return false". Почему? |
Цитата:
отменить действие по умолчанию можно ещё так e.preventDefault(); Цитата:
|
Цитата:
|
"подсвечивается красным" - это неинформативно
|
Вложений: 1
melky, серьёзно? Я тоже так думаю.
Вот полный код: <!DOCTYPE html> <html> <head> <script src="http://code.jquery.com/jquery-latest.js"></script> <script> $(document).keydown(function(e) { if( e.keyCode === 27 ) { alert('Pressed escape'); $.post('/', function() { alert('OK'); }); return false; } }); </script> </head> <body> </body> </html> Результат при нажатии escape: сначала окно с "Pressed escape", успешный запрос и затем окно с "OK": Вложение 903 Если просто закомментировать "return false;", то при нажатии escape вылезет "Pressed escape" и неуспешный запрос: Вложение 904 В чём ошибка? P.S. Второй файл почему-то при заливке JPEG'ом стал. |
Кто-то понял в чём проблема?!
|
Часовой пояс GMT +3, время: 10:06. |