2014-03-29 304 views
0

我正在尝试使用光标的水平滚动系统。jQuery水平光标滚动

它的工作方式是,如果光标的X位置在屏幕的最左边, 页面应该处于0%水平滚动。

如果光标的X位置位于屏幕的右侧,则 页面应处于100%水平滚动状态。

我该如何做到这一点?

干杯!

回答

0

你可以得到相对的文件左侧的鼠标指针与event.pageX的位置,并使用scrollLeft()设置滚动:

$(document).mousemove(function (e) { 
    var winW = $(window).width(), 
     docW = $(this).width(), 
     i = docW/winW, //increment value 
     x = (e.pageX - $(window).scrollLeft()) * i; 

    $(window).scrollLeft(x); 
}); 

看到这个演示:http://jsfiddle.net/m28EY/4

+0

我的解释一定没有过够好了。我需要它,所以滚动条只是触及文档的右侧,就像光标那样。在您的示例中,滚动条在光标所在的位置触及右侧。我希望这能更好地描述我的问题:) – yaclive

+1

啊是的,文档的一部分已经显示在窗口中,因此您可能需要减去窗口宽度:'docW = $(this).width() - winW'。看到这个更新的小提琴:http://jsfiddle.net/m28EY/5/ –

+0

太棒了!非常感谢你。我在这方面遇到了很多麻烦,你只是证明它非常简单。干杯! – yaclive