2

在我的网站上,我有 6 个 div,每个 div 与浏览器窗口的高度和宽度相同,所以 5 个不在视野范围内,3 个左对齐,然后 3 个在顶部,所以......

在此处输入图像描述

当我的访客滚动时,id 喜欢滚动到第 3 个 div,然后向上滚动到第 4 个,然后继续水平滚动。jQuery可以做到这一点,如果可以,怎么做?

4

2 回答 2

2

看一下这个。它允许您向不同方向滚动并像上面一样设置“幻灯片”

http://joelb.me/scrollpath/

于 2012-12-05T15:50:28.347 回答
1

简单(也许有帮助)但并不完美:

var win = $(window),
    doc = $(document),
    bodyH = doc.height() - win.height(),
    page4 = $('#page4');

win.scrollTop(bodyH);


$(document).on('DOMMouseScroll mousewheel', function(e, delta) {
    delta = delta || -e.originalEvent.detail / 3 || e.originalEvent.wheelDelta / 120;

    if(delta < 0) {
        if(win.scrollLeft() > page4.offset().left && win.scrollTop() !== 0) {
            win.scrollTop(win.scrollTop() + delta * 30);
        } else {
            win.scrollLeft(win.scrollLeft() - delta * 30);
        }
    } else {
        if(win.scrollLeft() < page4.offset().left && (win.scrollTop() > 0 || win.scrollTop() === 0) && win.scrollTop() !== bodyH) {
            win.scrollTop(win.scrollTop() + delta * 30);
        } else {
            win.scrollLeft(win.scrollLeft() - delta * 30);
        }
    }

    e.preventDefault();
});

演示

于 2013-02-09T15:44:33.383 回答