4

そのため、.append() を使用してリスト要素をリストに追加しています。追加された要素内には、jQuery Slider ウィジェットをアタッチする必要がある div があります。.on() などを使用する必要があるかどうかはわかりません。FWIW、無制限の量のliを追加できるため、divにクラスを使用しています。

とにかく、ここに簡略化されたスニペットがあります:

    $('.cycleDuration').slider();

    $cycleBlock += '<li>';
    $cycleBlock += '<div class="cycleDuration"></div>';
    $cycleBlock += '</li>';
    $('#cycles').append($cycleBlock);
4

2 に答える 2

4

要素が実際に追加される前に、コードをバインドする必要があると思います。この例では、スライダー コードがないため、クリック イベントをバインドしました。

http://jsfiddle.net/4vwUd/1

$('button').click( function() {
    //turn your div into a jquery object
    var $cycleBlock = $('<div class="cycleDuration"></div>');
    //bind the event
    $cycleBlock.bind('click', function() { alert(); });
    //append to the list
    $('#cycles').append('<li />').children('li:last').append($cycleBlock);
});
于 2012-01-05T02:58:05.913 に答える
2

リスト要素を追加するたびに「 $('.cycleDuration').slider(); 」を呼び出すだけで、追加されたクラス要素がその関数にバインドされます。

于 2012-01-05T03:03:31.590 に答える