skrollr.js使用时pc端鼠标滚动卡顿

skrollr.js使用时pc端鼠标滚动卡顿

介绍

skrollr.js是一款轻量级且强大的js视差动画效果库

使用

首先去进行引入库并进行初始化init

skrollr.init({
    forceHeight: false,
    easing: {
        vibrate: function(p) {
            return Math.sin(p * 10 * Math.PI);
        }
    }
});

正常写好之后
在你的元素上写上你需要的滑动方式
<div data-bottom-top="transform: translateY(100px)" data-top-top="transform:translateY(0)"></div>
即该元素的顶部从可视区域的底部运动到可视区域的顶部
官方有很好的解释图如下 可以根据你的需要自行修改参数
在这里插入图片描述
它会自动给你添加它的class类 且有可能影响页面自身的布局方式

效果

这边引用一下网易的花与剑官网的效果
若你的项目滑动效果未达到花与剑的效果
则跟项目配置有关系

滑动配置

以下配置对鼠标滑动做了一些优化 且用了jquery
可以试一下

var s = skrollr.init({
      smoothScrolling: false,
      scale: 1,
      easing: 'swing', //设置滑动的运行属性
      forceHeight: false,
    });

    var SCROLLTOP = 0;
    var moveSpeed = 40;
    //设置初始移动速度和scrolltop

    var setTweenMax = (top, speed) => {
      if (!speed) {
        speed = 0.5
      }
      TweenMax.to($('body,html'), speed, {
        scrollTop: top,
        ease: Power1.easeNone,
      })
    }

    $(window).on('mousewheel', function (event) {
      if (event.deltaY > 0) {
        SCROLLTOP -= moveSpeed;
      } else if (event.deltaY < 0) {
        SCROLLTOP += moveSpeed;
      }

      if (SCROLLTOP < 0) {
        SCROLLTOP = 0;
      } else if (SCROLLTOP > $(".main").height()) {
        SCROLLTOP = $(".main").height();
      }

      setTweenMax(SCROLLTOP);
    });

最后

当然 skrollr.js在触控板上看起来可能是正常的 因为它本身对触控板做了一些优化 鼠标优化就需要自己配置了

有兴趣的话可以去看一下它的源码 地址如下
skrollr.js

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值