jquery ui - draggable:onDrag - 需要能够更新draggable的css ... cant :(

时间:2014-02-27 17:03:41

标签: jquery jquery-ui jquery-ui-draggable

我正在尝试在拖动时更新draggable的位置....但据我所知,在我放入drag函数的代码之后,jquery ui会更新定位(所以它覆盖了我的css)我甚至无法改变背景颜色!

我实际上试图在拖动div并使用overflow:auto;在容器中滚动时修复某些内容....如果你想知道我为什么要更新这个位置。

$(".editable").draggable
({
    grid: [24, 86],
    drag: function(event, ui)
    {
        $('.editable').css({left: '100px'});

        // so im guessing jquery ui is updating the position after this?

    }
});

所以....任何人的想法?

我基本上需要能够在jquery ui更新位置后更新draggable的位置......但是当你还在拖动时...我希望这是有意义的:/

在此先感谢,任何输入将不胜感激:)

1 个答案:

答案 0 :(得分:1)

drag无法解决您的问题,您需要使用drag event listener,在创建时您只定义了拖动事件的回调,应用这些更改:

$(".editable").draggable
({
  grid: [24, 86],
  drag: function(event, ui) {} //changed
});

//event listener
$( ".editable" ).on( "drag", function( event, ui ) {
  ui.position.left = 100; //check here
} );

请注意我的评论check here,我不太确定您是要将100px添加到left还是定义100px,目前代码将其定义为100px