Секретная кнопка> Нужно сделать на странице "секретную кнопку", которую обычные люди не могли бы найти. > Народ сидит в зале, все на одной странице (тестирование). Задача - нужно делать протокол в случае нештатной ситуации. Подходит спец. человек, нажимает на "секретную кнопку" и скрипт генерирует протокольное сообщение (на сервер).
Если честно, то мне достаточно сложно понять что такое "генерирует протокольное сообщение", поэтому примем, что ты в курсе что это такое будет.
перехватить событие "нажата клавиша" для всего документа - легко:
if (document.all) { document.onkeypress = имя_твоей_функции; } else (if document.implementation && document.implementation.hasFeature('Events','2.0') { document.addEventListener("keypress", имя_твоей_функции, false); }
потом, нужно учесть, что клавишы в MSIE и Mozilla определяются по-разному, поэтому нужно передать твоей функции (e) (кстати в NN4 тоже должно сработать).
Пример функции, которая отслеживает нажатие Ctrl-Z (стандартное UnDo - на маке - Cmd-Z):
function имя_твоей_функции(e) { if (document.all) { if (event.ctrlKey && event.keyCode == 26) { // Делаеш, что хочеш } } else { CtrlKey = (navigator.userAgent.indexOf('Mac') >= 0)? e.metaKey : e.ctrlKey; if (CtrlKey && e.which == 122) { // Делаеш, что хочеш e.preventDefault(); } } }
... нда, наверное пора дописать и опубликовать статью про события ;-) |