1

ドラッグの開始時に表示されるスライド パネルに要素をドロップしようとすると、問題が発生します。そして、最初のドロップは機能しません。アイテムを 2 回ドロップする必要があります。これは起こるべきではありません。

また、ユーザーが別の画像をドラッグ アンド ドロップできるように、パネルを 3 秒間表示したままにしておきたいのですが、代わりにそこに置いたままにして、再び上下にスライドさせます。それを回避することは可能ですか?または、別のドロップで遅延をリセットしますか? つまり、別の要素がドロップされた場合、遅延が再開されます。

そして、$('.last.thumb').replaceWith($(ui.draggable).clone());うまく機能していません。これにより、最後に追加された画像が表示されます。

$(function() {
var thumb = $(".thumb");
var container = $("#favorites");
thumb.draggable({
    opacity: 0.75,
    helper: "clone",
    start: function() {
        container.slideDown();
    },
    stop: function(){
        container.delay(3000).slideUp();
    }
});

container.droppable({
    tolerance: 'fit',    
    drop: function(event, ui) {
        $('.last.thumb').replaceWith($(ui.draggable).clone().addClass('last'));
        alert(ui.draggable.attr('id').substring(6));
        container.delay(3000).slideUp();
    }
});
});

作業例はこちら

4

1 に答える 1

1

上下のスライドについては、.clearQueue() を使用してみてください。あなたの例では、.last div には .thumb がありません。クローンに置き換えると、最後のクラスがなくなります。クローンに追加します。この例を参照してください: http://www.jsfiddle.net/dh8A8/5/

于 2010-12-30T15:00:28.330 に答える