覆盖浏览器滚动行为?

时间:2012-08-03 17:37:48

标签: javascript scroll

我有一个用户界面想法,需要覆盖浏览器的滚动功能,以便我可以为滚动操作创建自己的行为。

当用户滚动时,有没有办法防止窗口滚动?

2 个答案:

答案 0 :(得分:2)

你可以试试这个

​$(window).scroll(function() {
   $(this).scrollTop(0);
});​​

DEMO

答案 1 :(得分:0)

您可以尝试使用jQuery Scrollbar库,该库需要:

  1. jQuery(版本1.6 +)
  2. jQuery UI Widget(用于Widget Factory)
  3. 您可以在此处下载图书馆:https://github.com/Naeka/jquery-scrollbar。这是一个demo

    以下是滚动条的选项:

    $("#scroll").scrollbar({
        classes: '',         // Extra classes for css styling
        wheel: 40,           // Scroll offset on mousewheel
        scroll: true,        // Allow / disallow mouse scrolling
        overlay: true,       // Scrollbars are overlaid
        autohide: true,      // Scrollbars are automatically hidden
        animate: {           // Scroll wheel animation - set to false to disable
            duration: 300,
            easing: 'swing'
        }
    });
    

    您可以在特定事件的页面中滚动到某个ID:

    $("#scroll").scrollbar("scrollTo", "#p");
    

    以下是scrollTo用法的更多选项:

    scrollTo([offsetX, offsetY])
    scrollTo(selector)
    scrollTo(jQuery object)