Remysharp's js Inview插件两次启动速度转换

Remysharp's js Inview plugin fired velocity transition twice

本文关键字:两次 启动 转换 速度 插件 Inview js Remysharp      更新时间:2023-09-26

我正在使用Remysharp In-View插件来确定元素何时在视图中。当它在视图中时,我使用速度在中显示该元素。出于某种原因,在视图调用内部,动画会触发两次。在In-View调用之外,它可以正常工作。

为什么它开了两枪?

$(".xslideUpIn").one('inview', function (event, visible) {
      if (visible == true) {
         $(".xslideUpIn").velocity('transition.slideUpIn', { stagger: 700 }).delay(1000)
      } else {
        // element has gone out of viewport
      }
});

尝试

$(".xslideUpIn").one('inview', function (event, visible) {
  if (visible == true) {
     setTimeout(function() {
       $(".xslideUpIn").velocity('transition.slideUpIn', { stagger: 700 }).delay(1000)
     }, 0);
  } else {
    // element has gone out of viewport
  }
});