0

我正在尝试使用 Jquery Draggable,但是当目标项目被抬起然后放下、悬停在其旧位置或从其容器中取出时,我注意到闪烁。拖动的 div 中的图像只是消失或出现在错误的位置(它应该在拖动时始终显示在同一位置 - 正如您所期望的那样)。

知道如何纠正这种情况吗?

我的代码:

http://jsfiddle.net/PTSkR/28/

$(function () {
            $('#container').isotope({
                // options
                itemSelector: '.study-box',
                layoutMode: 'fitRows'
            });
        });

        $(function () {
            $(".study-box").draggable({
                revert: "invalid",
                helper: function () {
                    // We removeAttr('style') to get rid of the transform css that isotope added.
                    return $(this).clone().removeAttr('style').removeClass('isotope-item').addClass('drag-helper').appendTo('body');
                },
                start: function () {
                    $(this).hide();
                },
                stop: function () {
                    $(this).show();
                },
                zIndex: 100
            });
        });
        $(function () {
            $(".folder-box").draggable({ revert: "invalid" });
            $(".folder-box").droppable({
                // revert: "invalid",
                accept: ".folder-box, .set-box", 
                drop: function (event, ui) {
                    var $this = $(this);
                    //ui.draggable.clone().removeAttr('style').removeClass('.folder-box').appendTo($this);
                    $('#container').isotope('remove', ui.draggable);
                }
            });
        });
4

1 回答 1

0

JavaScript 没有任何问题,只需从 CSS 中删除所有“位置:固定”即可。它弄乱了背景位置的正确显示。

于 2013-04-28T05:25:16.347 回答