出现滚动条时的eventlistener / css伪类

时间:2015-03-17 17:30:35

标签: javascript html css javascript-events pseudo-class

当滚动条出现并消失时,是否存在javascript eventlister或css伪类? 例如系统Mac OS,Scrollbars是默认隐藏的,当你开始滚动时它们会出现。对于Windows Internet Explorer> = 10也是如此。 我想知道滚动条出现并消失了。 我的第一次测试:

var doscroll = false,
        $html = $('html'),
        timer;
$(window).on('scroll', function () {
    if (!doscroll) {
        doscroll = true;
        $html.addClass('doscroll');
    }
    clearTimeout(timer);
    timer = setTimeout(function () {
        doscroll = false;
        $html.removeClass('doscroll');
    }, 2000);
})

但是当我点击滚动条并且不滚动时,定时器会删除docsroll-class,而且我也不知道何时删除doscroll-class的确切时间。

有没有更好的解决方案/想法?

谢谢奥利弗

1 个答案:

答案 0 :(得分:0)

没有。滚动条与实现有关。

spec

  

滚动机制 取决于UA。最普遍的   机制是一个滚动条,但是panners,hand grsors,page flickers,   也是可能的。

因此,某些实现没有滚动条,而其他一些实现但从不隐藏它们。因此,这个事件毫无意义。