「esc」キーを現在の状況に基づいて別のことをしたい..たとえば、ツールバーを表示するボタンがあり、「esc」キーでそれを非表示にしたいが、「esc」も必要'-キーを押して現在のページを閉じるためのボックスを開きます。もう一度 'esc'-キーを押すと、閉じるボックスが非表示になります。
こんな感じかと思ったらクロージングボックスしか開かない。「esc」をもう一度入力しても閉じず、ツールボックスが表示されているときに非表示にもなりません。上部のクロージングボックスを開くだけです。
function esc_key_command() {
if (toolboxIsShown) {
$('.tool_box').hide();
var toolboxIsShown = false;
} else if (CloserIsShown) {
$('.closer').stop().fadeOut(200);
var CloserIsShown = false;
} else {
$('.closer').stop().fadeIn(200);
var CloserIsShown = true;
}
}
キーが入力されたときに少なくとも何かを返すため、「esc」キーの呼び出しとは何の関係もないことはわかっています。