ねえ、 おそらくシンプルな質問、しかし、何もオンラインで見つけることができませんでした。jquery keypressは各ループを繰り返し実行しますか?
私は検索結果のリストを持っています。私は自分の上下のキーでリストをナビゲートすることができます。
if (e.keyCode == 40) { //down
//alert('down');
$('#searchresults ul li').each(function() {
});
}
if (e.keyCode == 38) { //up
//alert('up');
}
if (e.keyCode == 13) { //enter
//alert('enter');
}
にsearchResultsは、次のようになります。
<ul>
<li class="matched"><a href="link1">link1</a></li>
<li class="matched"><a href="link2">link2</a></li>
<li class="matched"><a href="link3">link3</a></li>
</ul>
だから基本的に私はちょうど上下キーで私にsearchResultsをナビゲートすることができるようにしたいです。現在の要素の選択は、単に背景色を変更する必要があります。私がEnterを押すと、リンクされて一致した要素が発生します。
どのように私は検索結果を反復処理することができますか? はあなたに
編集感謝:私は、インデックスメソッドと間違って何かをやっているので、
var pressedCount = 0;
if (e.keyCode == 40) { //down
console.log(pressedCount);
$('#searchresults ul li').index(pressedCount).addClass('selected');
pressedCount++;
}
は、動作しません。しかし、pressedCount varはすべてのarrowkeydownトリガーで増分します。
ちょっと指摘しておきたいのは、簡単な質問はなく、何かを理解しているかどうかだけです。このサイトは2番目のケースの状態です。 :) – Mantar