0
我正在尝试使用光标的水平滚动系统。jQuery水平光标滚动
它的工作方式是,如果光标的X位置在屏幕的最左边, 页面应该处于0%水平滚动。
如果光标的X位置位于屏幕的右侧,则 页面应处于100%水平滚动状态。
我该如何做到这一点?
干杯!
我正在尝试使用光标的水平滚动系统。jQuery水平光标滚动
它的工作方式是,如果光标的X位置在屏幕的最左边, 页面应该处于0%水平滚动。
如果光标的X位置位于屏幕的右侧,则 页面应处于100%水平滚动状态。
我该如何做到这一点?
干杯!
你可以得到相对的文件左侧的鼠标指针与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
我的解释一定没有过够好了。我需要它,所以滚动条只是触及文档的右侧,就像光标那样。在您的示例中,滚动条在光标所在的位置触及右侧。我希望这能更好地描述我的问题:) – yaclive
啊是的,文档的一部分已经显示在窗口中,因此您可能需要减去窗口宽度:'docW = $(this).width() - winW'。看到这个更新的小提琴:http://jsfiddle.net/m28EY/5/ –
太棒了!非常感谢你。我在这方面遇到了很多麻烦,你只是证明它非常简单。干杯! – yaclive