首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用jQuery制作slimScroll动画

如何使用jQuery制作slimScroll动画
EN

Stack Overflow用户
提问于 2013-08-30 09:55:29
回答 3查看 7.9K关注 0票数 4

如何使用jQuery设置动画效果?我试图在用户单击跨度p1c1时创建一个平滑的滚动到函数。slimScroll正在工作,但我不确定如何在其中加入动画功能。我应该尝试补间吗?

代码语言:javascript
复制
$('.p1c1').on("click", function(){
    var fromTop = $('.p2c1').position().top;
    $("#panel2").slimScroll({ scrollTo: fromTop  });
});

这是我想要做的动画类型,但是在我的slimScroll面板中:

代码语言:javascript
复制
$('html, body').animate({
    scrollTop: $(".middle").offset().top
}, 2000);

下面是slimScroll库:https://github.com/rochal/jQuery-slimScroll/

EN

回答 3

Stack Overflow用户

发布于 2013-10-01 01:44:00

我正在寻找同样的东西,但找不到现有的解决方案-所以我对rochal的代码做了一个简单的分支。你可以在这里找到它:https://github.com/edragame/jQuery-slimScroll

我所做的唯一更改是添加了一个动画选项,如下所示:

代码语言:javascript
复制
$("#panel2").slimScroll({ scrollTo: fromTop, animate: true });

如果有帮助,请告诉我。

票数 11
EN

Stack Overflow用户

发布于 2013-12-28 02:21:15

"Animate: true“不起作用。

您必须去掉jquery.slimscroll.js中的"if (isJump)“部分,并将其替换为:

代码语言:javascript
复制
if (isJump)
      {
        delta = y;
        var offsetTop = delta / me[0].scrollHeight * me.outerHeight();
        offsetTop = Math.min(Math.max(offsetTop, 0), maxTop);
        bar.css({ top: offsetTop + 'px' });
        me.animate(
          { scrollTop: delta + 'px' },
          1200
        );
      }
      if (!isJump){
        me.scrollTop(delta);
      }
票数 3
EN

Stack Overflow用户

发布于 2021-07-01 03:37:05

我使用的是scroll-behavior: smooth;,对我来说工作得很好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18523732

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档