2012-08-03 66 views
0

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

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

+1

是否要替换主滚动条动作? – 2013-07-08 11:43:44

+0

是的,我有兴趣使用滚动操作(滚轮,箭头等)来启用页面上的其他功能。 – John 2013-07-08 22:42:03

回答

2

你可以试试这个

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

DEMO

+0

添加'$(this).scrollLeft(0);'我想如果你想彻底。 – kei 2012-08-03 17:49:05

0

您可以尝试使用jQuery Scrollbar库要求:

  1. 的jQuery(版本1.6+)
  2. jQuery UI的小工具(用于Widget Factory)

您可以在此处下载图书馆: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)