2015-12-23 138 views
1

首先感谢您抽出时间。为了保持简短,我将立即着手。Ch j jquery平滑滚动

即时通讯使用jQuery平滑滚动脚本,一直工作正常,但现在我有一个脚本的问题。我不知道自己做错了什么,但在谷歌浏览器上滚动时确实很不稳定。在Internet Explorer和Firefox上它工作正常。图像大小约为2MB,视频大小为3MB。我甚至试图删除视频和图像,看看它有没有什么区别,但没有。

我清除了我的谷歌镀铬cashe和饼干,但仍然波涛汹涌。同样在

$(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:我还在努力改变颜色等

回答

0

我一直在删除代码来找到问题,并发现wow.js脚本是问题。就像Korgrue所说的那样,其他行为都会干扰滚动。

0

相信这与否,Chrome已经需要被设置为允许平滑滚动平滑滚动标志。这种混乱与JS不是异步的事实有关。每个步骤都是一个接一个地执行 - 所以如果您在滚动发生时正在运行其他JS函数,它将犹豫直到它的滚动变为堆栈。

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

  1. 打开一个新的标签和输入地址铬://标志/
  2. 找到平滑滚动标志。
  3. 单击启用
  4. 重新启动Chrome浏览器...

重要提示:大多数移动设备延迟执行JS在滚动时节省电池电量。因此,如果您在移动设备上使用JS驱动的平滑滚动,您几乎肯定会注意到犹豫。

+0

它现在更好的工作我已经激活了滚动标志,但仍断断续续:( 是否有延迟等功能,我自己当滚动动画正在发生的方式后 因为[这里](HTTP:/? /mustafapiynirci.github.io/old-portfolio/)网站工作正常 – theguy

+0

我不想让你误入歧途,我不知道答案.JS引擎在内部处理堆栈.Chrome一直有点不稳定我和国旗是我迄今为止唯一找到的浏览器的解决方案,如果有人有更好的答案,我很想知道我自己,我的解决方案对于那些知道国旗的人来说只是一个半解决方案。你的用户可能不会知道它,只是保留默认设置。 – Korgrue

+0

嗯,是的,你是对的。无论如何,谢谢;) – theguy