邋j的jquery光滑滚动

时间:2015-12-23 17:12:13

标签: jquery html css

首先感谢您抽出宝贵时间。为了保持简短,我会直截了当。

我使用的jQuery平滑滚动脚本一直运行良好,但现在我的脚本有问题。我不知道自己做错了什么,但在Google Chrome上滚动时却非常不稳定。在Internet Explorer和Firefox上,它运行良好。图像大约为2MB,视频为3MB。我甚至试图删除视频和图像,看它是否有任何区别,但没有。

我已经清除了我的谷歌镀铬咖啡和饼干,但仍然不稳定。还在

上进行了测试
$(function() {
  $('a[href*=#]:not([href=#])').click(function() {
    if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
      var target = $(this.hash);
      target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
      if (target.length) {
        $('html,body').animate({
          scrollTop: target.offset().top
        }, 1000);
        return false;
      }
    }
  });
});

您可以实时查看我的网站here

再次感谢您的时间。随时欢迎提示。

PS:我还在努力改变颜色等。

2 个答案:

答案 0 :(得分:0)

相信与否,Chrome有一个平滑的滚动标记,需要设置为允许平滑滚动。这种不稳定与JS不是异步的事实有关。每个步骤都是一个接一个地执行 - 所以如果你在滚动时运行其他JS函数,它会犹豫不决,直到它的滚动在堆栈中转动。

Chrome标记执行其他浏览器已经执行的操作 - 在滚动完成之前延迟执行其他功能。要在Chrome上启用平滑滚动,请尝试:

  1. 打开新标签页并输入地址chrome:// flags /
  2. 查找平滑滚动标记。
  3. 点击启用
  4. 重新启动Chrome浏览器...
  5. 重要说明:大多数移动设备会在滚动时延迟JS执行以节省电池电量。因此,如果您在移动设备上使用JS驱动的平滑滚动,您几乎肯定会注意到犹豫。

答案 1 :(得分:0)

我一直在删除代码以找到问题,我发现wow.js脚本是问题所在。就像Korgrue所说,其他行为正在干扰滚动。