如何在水平溢出的页面上向右滚动?

时间:2013-05-09 15:28:43

标签: javascript jquery

当用户关闭模态时(特别是基础4中的显示模式),我想滚动到非常宽的页面的最右边(它的目的很宽)。

我已尝试在一直对齐的div上设置id,但这显然不起作用。

3 个答案:

答案 0 :(得分:33)

要水平滚动,请使用scrollLeft()

$('body, html').scrollLeft(400);

jQuery还支持动画scrollLeft属性。

要一直向右滚动,您将获得页面的整个宽度,并减去窗口宽度以获得左边缘:

var left = $(document).outerWidth() - $(window).width();
$('body, html').scrollLeft(left);

答案 1 :(得分:4)

你实际上可以用div ID来做。如果您有这样的div:

<div id="divid" style="position: absolute; left: 9000px;">Far Right</div>

然后只需将location.hash更改为匹配:

location.hash = "divid";

浏览器会为您滚动。

答案 2 :(得分:2)

好的,这是一个有效的例子:http://jsfiddle.net/B2aQF/1/

基本上,您可以使用jQuery的scrollLeft函数设置正文的左滚动位置:

$(document).ready(function(){
    $('body').scrollLeft($(document).outerWidth()); 
});

您甚至可以将scrollLeft设置为比您需要的更高的数字,因为它不会过度滚动。