JSFiddle - React, Tailwind, and code Playground

JavaScript

var t, l = (new Date()).getTime();

$(window).scroll(function(){
    var now = (new Date()).getTime();
    
    if(now - l > 400){
        $(this).trigger('scrollStart');
        l = now;
    }
    
    clearTimeout(t);
    t = setTimeout(function(){
        $(window).trigger('scrollEnd');
    }, 300);
});

$(window).bind('scrollStart', function(){
    console.log('scrollStart');
    alert('scrollStart');
});

$(window).bind('scrollEnd', function(){
    console.log('scrollEnd');
    alert('scrollEnd');
});

$('body').height(2000);