如何使用 JQuery UI 动画到新的“位置”

Posted

技术标签:

【中文标题】如何使用 JQuery UI 动画到新的“位置”【英文标题】:How can I use JQuery UI to animate to a new "position" 【发布时间】:2017-11-29 17:49:30 【问题描述】:

我正在使用 JQuery .postion() 函数来相对于另一个对象放置我的对象。不过,我希望它动画化到那个位置。

我知道如何制作动画,但这需要知道位置,在这种情况下,我使用 .postion() 来实际计算该位置:

                $(this).position(
                
                    my: 'left top',
                    at: 'left+' + xPos + ' top+' + yPos,
                    of: $("#dropdiv1")
                );

那么,有没有办法将该位置作为中间结果,然后使用 animate() 去那个位置呢?

如果我知道位置,我会使用 animate(),但 postion() 调用会为我计算,所以我不知道该怎么做。

【问题讨论】:

为什么不直接用.css()问职位? 【参考方案1】:

我不能说我 100% 确定它是如何工作的,但经过修补后,它可以完美运行:

                $(this).position(
                
                    my: 'left top',
                    at: 'left+' + xPos + ' top+' + yPos,
                    of: $("#dropdiv1"),
                    using: function (css, calc)
                    
                        $(this).animate(css, 200, "linear");
                    
                );

【讨论】:

以上是关于如何使用 JQuery UI 动画到新的“位置”的主要内容,如果未能解决你的问题,请参考以下文章

动画 jQuery Ui 位置()

Win10系列:JavaScript动画2

Android -> 如何动画到新位置

Jquery可排序“更改”事件元素位置

如何使用 jquery-ui 的 toggleClass 更好地制作动画?

在 jQuery UI 中克隆可拖动对象时,如何将数据和事件传输到新元素?