Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在进行滚动动画时禁用滚动_Javascript_Jquery_Jquery Plugins_Jquery Scrollable - Fatal编程技术网

Javascript 在进行滚动动画时禁用滚动

Javascript 在进行滚动动画时禁用滚动,javascript,jquery,jquery-plugins,jquery-scrollable,Javascript,Jquery,Jquery Plugins,Jquery Scrollable,当用户上下移动鼠标滚轮、按关键字箭头或移动侧边的滚动条时,我试图创建一个滚动动画 它和我发现的非常相似。因为我没有找到任何jQuery插件,所以我试图自己复制它,我在滚动行为方面遇到了一些问题 当滚动动画发生时,您仍然可以使用鼠标滚轮滚动,这会使移动看起来很难看,上下移动一段时间 这是我的小提琴,你可以在这里查看: 问题是滚动没有被禁用,在我检查他们是否在向上或向下滚动之前,网站已经滚动了一点(滚轮的移动或关键字)。因此,我认为解决这个问题的方法是禁用滚动效果,让我决定当用户决定滚动时该怎么做

当用户上下移动鼠标滚轮、按关键字箭头或移动侧边的滚动条时,我试图创建一个滚动动画

它和我发现的非常相似。因为我没有找到任何jQuery插件,所以我试图自己复制它,我在滚动行为方面遇到了一些问题

当滚动动画发生时,您仍然可以使用鼠标滚轮滚动,这会使移动看起来很难看,上下移动一段时间

这是我的小提琴,你可以在这里查看:

问题是滚动没有被禁用,在我检查他们是否在向上或向下滚动之前,网站已经滚动了一点(滚轮的移动或关键字)。因此,我认为解决这个问题的方法是禁用滚动效果,让我决定当用户决定滚动时该怎么做

我一直在看像或这样的帖子,但这并不能解决我的问题

这就是到目前为止我所做的,你可以从中看到:


谢谢。

在函数开始时,您可以应用一些CSS属性,使其不可滚动。然后在动画结束时,将其恢复为正常状态。例如:

在动画开始时

$('html, body').css({
    'overflow': 'hidden',
    'height': '100%'
})
然后,然后结束

$('html, body').css({
    'overflow': 'auto',
    'height': 'auto'
})

这与这个答案几乎是一样的:

Nop。如果我用CSS禁用滚动,那么我就无法检测用户是否滚动,我的代码也无法工作。我没意识到你特别想追踪那个。很抱歉。
$('html, body').css({
    'overflow': 'auto',
    'height': 'auto'
})