Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.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_Scroll_Dom Events - Fatal编程技术网

Javascript 检测滚动完成/结束

Javascript 检测滚动完成/结束,javascript,jquery,scroll,dom-events,Javascript,Jquery,Scroll,Dom Events,我想检测用户何时停止滚动页面/元素。这可能很棘手,因为最近对OSX滚动行为的增强产生了这种新的惯性效应。是否已触发事件 我能想到的唯一其他解决方案是,当页面/元素的滚动位置不再改变时,使用一个时间间隔来拾取,例如: var element = $( el ); var previous = element.scrollLeft(); var current; element.scroll( function(event) { current = element.scrol

我想检测用户何时停止滚动页面/元素。这可能很棘手,因为最近对OSX滚动行为的增强产生了这种新的惯性效应。是否已触发事件

我能想到的唯一其他解决方案是,当页面/元素的滚动位置不再改变时,使用一个时间间隔来拾取,例如:

var element     = $( el );
var previous    = element.scrollLeft();
var current;

element.scroll( function(event)
{
    current = element.scrollLeft();

    if ( current === previous )
    {
        // user has stopped scrolling
    }

    previous    = current;
});
看看,它的jquery,对我来说很好,希望能为你工作

中还有其他滚动事件代码。

可能有用

// Setup isScrolling variable
var isScrolling;

// Listen for scroll events
window.addEventListener('scroll', function ( event ) {

    // Clear our timeout throughout the scroll
    window.clearTimeout( isScrolling );

    // Set a timeout to run after scrolling ends
    isScrolling = setTimeout(function() {

        // Run the callback
        console.log( 'Scrolling has stopped.' );

    }, 66);

}, false);

是的,它们本质上是一样的:检查滚动何时停止。我希望在某处会有某种本地DOM事件。