【问题标题】:Jquery draggable inside of niceScroll plugin overflow issuejQuery可在 niceScroll 插件溢出问题中拖动
【发布时间】:2013-11-07 21:44:57
【问题描述】:

您好,我有一个需要拖放到不同 div 上的可拖动项目列表。

我正在使用 jquery 插件 niceScroll,我无法将对象拖到 niceScroll 的“外部”,我认为这与溢出被隐藏但无法使其工作有关。

当我在可放置的 div 上放开鼠标时会触发放置事件。

我有

//COMMENT ME OUT TO SEE THAT IT WORKS WHEN niceScroll IS NOT ENABLED
$("#external-sales-orders").niceScroll();

$(".external-event").draggable({
    revert: true

});

$("#droppable").droppable({
    drop: function(){
        alert("Dropped");
    }
});

看看这个:http://jsfiddle.net/BYK4J/2/

谢谢!

【问题讨论】:

    标签: jquery overflow draggable droppable nicescroll


    【解决方案1】:

    尝试进行克隆并将其附加到body

    $(".external-event").draggable({
        revert: true,
        appendTo: 'body',
        helper: 'clone'
    });
    

    FIDDLE

    查看 appendTo() 文档:JQuery UI API

    AppendTo 指定可拖动助手在拖动时应附加到哪个元素。默认情况下,它设置为父元素。

    更新:

    想出一个方法来实现你想要的功能与漂亮的滚动插件一致。当元素被拖动时,它将原始元素设置为visibility:hidden,因此该位置仍然保留,然后当项目被放下时,它恢复visibility。这是updated fiddle

    【讨论】:

    • 我确实尝试过,但我不想要副本,我希望它的反应方式与没有启用 niceScroll 的情况相同。感谢您的快速响应!
    • 啊,我明白了。您可以覆盖 niceScroll 放在容器 div 上的 overflow:hidden,但这违背了插件的目的 (jsfiddle.net/BYK4J/5)
    • @kevindstanley 用您正在寻找的功能更新了我的答案。
    猜你喜欢
    • 2012-05-06
    • 2010-10-23
    • 2013-10-17
    • 1970-01-01
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    • 1970-01-01
    • 2011-08-16
    相关资源
    最近更新 更多