回调动画jquery ui删除元素

时间:2013-01-28 15:39:00

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

我正在尝试使用jQuery UI拖放div后对其进行动画处理。我按照jQuery UI docs()使用'stop'事件。

但是,我真的很难获得已被删除的对象以便能够为其设置动画。这是我目前所处的位置,虽然我已经尝试了几件似乎不起作用的事情:

        $('.item').draggable({
            stop: function (event, ui) {
                $(ui.draggable).animate({ bottom: 0 }, { duration: 1000, easing: 'easeOutBounce' });
            }
        });

这是使用jQuery 1.9.0和jQuery UI 1.10.0。

我确信这一定很简单 - 我无法让它发挥作用。

2 个答案:

答案 0 :(得分:1)

两个问题,这是固定代码:

 $('.item').draggable({
            stop: function (event, ui) {
                $(this).animate({ "top": "0px" }, { duration: 1000, easing: 'easeOutBounce' });
            }
        });

首先 - ui.draggable实际上没有选择任何东西,并且返回undefined。已更改为this以影响已拖动的元素。

此外,jQuery没有读取CSS属性bottom。你必须以某种方式使用top来达到你想要的效果。以同样的方式,left会起作用,但right不会。

小提琴:http://jsfiddle.net/klatzkaj/kjtD8/

答案 1 :(得分:0)

ui.draggable(什么都不是)更改为this,它会影响拖动的div。请注意,动画可能不会发生,具体取决于您的布局,但我可以使用它:

http://jsfiddle.net/T4UDp/

由于可拖动本身会更改top,因此bottom: 0单独无效。