私は、異なる個々のキープレスで CSS が切り替えられる 2 つの div を持つプロジェクトを構築しています。
私はこのjQueryライブラリを使用しています: https://github.com/jeresig/jquery.hotkeys/
ここで簡単なデモを見ることができます: http://lazarogamio.com/projects/key_test/
ここに私のHTMLがあります:
<div class="test_box" id="red"></div>
<div class="test_box" id="green"></div>
私のCSS:
.test_box {
width: 200px;
height: 200px;
border: 2px solid #000;
margin: 20px;
float: left;
}
.red {
background-color: red;
}
.green {
background-color: green;
}
そして私のjQuery:
function keymap(){
$(document).bind('keydown', 'r', function (evt){
$('#red').toggleClass('red');
});
$(document).bind('keydown', 'g', function (evt){
$('#green').toggleClass('green');
});
};
$(document).ready(keymap);
現時点では、keydown イベントは機能していますが、すべてのキーと両方の div に対してです。私は元々、各 div を個別の関数で制御していましたが、結果は同じでした。また、他のキーを何もしないようにマッピングしようとしましたが、役に立ちませんでした。私の推測では、キーを適切にターゲットにしていないか、関数を正しいオブジェクトにバインドしていないのでしょうか?