12

現在の要素のすぐ次の要素 (他の場合はすぐ前の要素) にフォーカスを設定する必要があります。

例えば:

<li>item1</li> <- prev element (get this element)
<li>item1</li><- current element
<li>item1</li> <- next element (get this element)
<li>item1</li>

これは私が使ったものです

var curr = (event.target).next();
$(curr).trigger('focus');

firebugの値を確認するとcurr、何らかの理由で未定義と表示されます。

4

3 に答える 3

23

使用する

$(event.target).next() 

次の兄弟を取得します。関数に式を渡すこともできnextます。これにより、セレクターに一致する次の兄弟が選択されます。

$(event.target).next("p")

を使用することもできますnextAll。これは同じように機能しますが、次のすべての subling を返します。詳しくはこちらをご覧ください。前の要素を取得するための類似物であるprevともあります。prevAll

基本的に、あなたは本当に近くにいました。実際の要素を返すevent.targetように、jQuery オブジェクトをラップするだけです。event.target

于 2009-09-11T13:19:47.037 に答える
7

あなたはjqueryイベントハンドラーの中にいますか? もしそうなら、なぜ$(this).next()and/orを使わないの$(this).prev()ですか?

于 2009-09-11T10:14:38.153 に答える
2
var curr = (event.target).nextSibling;
于 2009-09-11T09:24:23.013 に答える