当垂直滚动时,如何水平移动div(使用jquery或CSS3)

6

我想让一个div在页面向上或向下滚动时,从左边移动到右边。当页面向下滚动时,它应该向右移动;当页面向上滚动时,它应该向左移动。


我有一个<div style="margin-left:15px;">,我想将margin-left从15px增加到400px,并带有滚动条,当向下滚动时,它应该增加,当向上滚动时,它应该减少。 - bigtechideas
1
@bigtechideas:发一些你尝试过的代码。最好创建一个jsfiddle。 - Jithin
1个回答

15

看这里一个小例子,一个红色的框将水平滚动,根据你垂直滚动的页面百分比:

$(document).ready(function () {
    var $horizontal = $('#horizontal');

    $(window).scroll(function () {
        var s = $(this).scrollTop(),
            d = $(document).height(),
            c = $(this).height();

        scrollPercent = (s / (d - c));

        var position = (scrollPercent * ($(document).width() - $horizontal.width()));

        $horizontal.css({
            'left': position
        });
    });
});

演示链接:http://jsfiddle.net/PvVdq/


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接