Горячие головыклавиши: Часть 2.
// Подписываемся на событие
Mousetrap.bind("a", function() { console.log("Это a"); });
#!+ // нажимаем «Это a»
#!- // log: «Это a»
#!+ // Подписываемся ещё раз
#!- Mousetrap.bind("a", function() { console.log("Да, это a!"); });
#!+ // нажимаем «a»
#!- // log: «Да, это a!»
// Подписываемся на событие
key("a", function() { console.log("Это a"); });
#!+ // нажимаем «Это a»
#!- // log: «Это a»
#!+ // Подписываемся ещё раз
#!- key("a", function() { console.log("Да, это a!"); });
#!+ // нажимаем «a»
// log: «Это a»
#!- // log: «Да, это a!»
key.on("esc", function () { console.log("первый"); });
#! key.on("esc", function () { console.log("второй"); });
#! // нажимаем esc
#! // log: «первый»
#! // log: «второй»
key.on("esc", logFirst);
#! key.on("esc", logSecond);
#! key.on("esc", logFirst);
#! // нажимаем esc
#! // log: «второй»
#! // log: «первый»
key.on("esc", function () { console.log("первый"); });
#! key.on("esc", function () { console.log("второй"); });
#!+ key.on("esc", function (evt) {
#! evt.preventDefault(); // отменяем действие по умолчанию
#! evt.stopImmediatePropagation(); // Остановить!!1
#! console.log("только я");
#!- });
#! // нажимаем esc
#! // log: «только я»
#! всё
var el = documment.getElementById("foo");
key.on("esc", el, function () { console.log("OK"); });
#!+ // нажимаем esc
#!- // log: «OK»
#! el.parentNode.removeChild(el);
#! // нажимаем esc
#! // ничего
#! documment.body.appendChild(el);
#!+ // нажимаем esc
#!- // log: «OK»