0

それぞれが独自のクリックとホバー機能を持つ ul 内の要素のリストを作成しようとしていますが、何らかの理由で、すべてのリスト要素がバインドしようとする最後の関数にバインドされます。私は多くの回避策を試しましたが、それらはすべて同じ効果を生み出すようです。これが私のコードです(実際の変数ではなく、アイデアで書かれています

for ( var i in JSON_object) {
    var li = document.createElement('li');
    $(li).attr("id","listitem" + i.toSting() );
    $(li).text(JSON_object[i]["name"]);
    $(li).hover(function1, function2);
    $(li).click(function3);
    $("ul").append(li);      
}  

これにより、各リスト項目が正しく表示され、それぞれに独自のテキストと ID が与えられます。しかし、リスト要素のIDを使用して関数をバインドしようとしても、すべてのリスト項目が最後の項目のクリックとホバー機能にバインドされます。

    $("listitem" + i.toSting()).hover(function1, function2);
    $("listitem" + i.toSting()).click(function3);

どんな助けでも感謝します、ありがとう。

4

1 に答える 1