jQuery.kinetic动画移动到位置

时间:2018-01-30 08:16:46

标签: javascript jquery

我使用jQuery.kinetic允许div通过拖动鼠标在其父div中滚动,就像演示on the author's site

一样

我想添加一个按钮,点击它后,将jQuery.kinetic激活的div移动到某个位置,但我找不到如何做到这一点。我知道可以调用scrollLeft和scrollRight方法来改变位置,完全按照我的意愿:

$("container-selector").kinetic("scrollLeft", 50);
$("container-selector").kinetic("scrollTop", 480);

然而我希望对位置的更改进行动画制作,而不是像上面的代码那样直接进行动画。

有人知道如何在点击按钮时将可拖动的div平滑移动到指定的位置,并将其设置为动画?谢谢!

1 个答案:

答案 0 :(得分:0)

从演示页面 HERE

$('#yourButtonIdOrClass').click(function() {
     $('.container-selector').kinetic('start', { velocity: -10 }); // code to move your container
});

来自Doc's

  

以特定的速度在滚动容器中开始移动。   在调用end方法之前,此速度不会变慢。

所以你需要调用end()方法来阻止div滚动到右手边的末端或左手边的末尾,你可能想要使用moved事件并检查容器移动了多少,如下所示:

moved : function() {
   if() // check moved position {
      $('.container-selector').kinetic('end');
   } 
}  

上面的代码将进入插件的初始化。

注意:: 您可以使用开发工具检查附加到leftright按钮的事件监听器。