【问题标题】:Detect scrolling attempts in overflow:hidden page?检测溢出中的滚动尝试:隐藏页面?
【发布时间】:2013-09-11 17:52:43
【问题描述】:

我想检测用户何时尝试在我的页面上向上或向下滚动,但由于我不想允许实际滚动,所以我设置了一个溢出:隐藏正文。代码是这样的:

$('html,body').css('overflow','hidden');
$(window).scroll(function(event){
    console.log("scroll");
});

问题是由于没有实际的滚动,我无法触发事件,我曾考虑过移除溢出样式并以某种方式阻止滚动,但我不知道该怎么做。

无论如何,有没有办法在检测滚动尝试时修复滚动?谢谢

【问题讨论】:

标签: javascript jquery css


【解决方案1】:

尝试使用 jQuery 鼠标滚轮https://github.com/brandonaaron/jquery-mousewheel。您可以检测鼠标滚轮的移动。另一个选项是不将溢出设置为隐藏,而是捕获滚动尝试并自己滚动它们。还有一堆JS滚动的库,我喜欢http://manos.malihu.gr/jquery-custom-content-scroller/

【讨论】:

    【解决方案2】:

    这是一个 jQuery 解决方案。

    $(document).bind('mousewheel', function(e) {
        var delta = e.originalEvent.wheelDelta;
        console.log('The mouse delta is : ' + delta);
    });
    

    jQuery Doc - .bind()

    【讨论】:

      猜你喜欢
      • 2015-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-08
      • 2020-08-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多