使用jquery水平滚动站点。单细胞跳跃?

使用jquery水平滚动站点。单细胞跳跃?,jquery,Jquery,我试图建立一个网站,这是一个水平滚动的网站。 当我单击散列(#)链接时,它应该滚动到该部分 我可以做到这一点,但我只是想这样,如果我点击一个链接,它将只滚动一个单元格。下面是一个很好的例子: 不管你点击左边的链接是什么,它只会移动一个单元格,而不是3或4个 谢谢你的帮助 Pad对我来说,每次点击内容都是通过AJAX加载的。所以,可能发生的情况是在当前内容div之前或之后添加一个内容div,然后滚动到该内容div HTML 这个特定的处理程序只向左滚动,但是修改它并不困难,这样您就可以根据链接的索

我试图建立一个网站,这是一个水平滚动的网站。 当我单击散列(#)链接时,它应该滚动到该部分

我可以做到这一点,但我只是想这样,如果我点击一个链接,它将只滚动一个单元格。下面是一个很好的例子:

不管你点击左边的链接是什么,它只会移动一个单元格,而不是3或4个

谢谢你的帮助


Pad

对我来说,每次点击内容都是通过AJAX加载的。所以,可能发生的情况是在当前内容div之前或之后添加一个内容div,然后滚动到该内容div

HTML

这个特定的处理程序只向左滚动,但是修改它并不困难,这样您就可以根据链接的索引向任意方向滚动

要掌握的主要概念是DOM操作。如果要向左滚动,请在当前元素之前插入一个元素,并将动画从负边距设置为0。如果要向右滚动,请在当前元素后插入一个元素,并将当前元素从0设置为负边距。确保在元素移出屏幕后将其删除,以节省内存,并且您应该已完成所有设置

<div id="container">
    <div id="current">... content...</div>
</div>
$('id').click(function() {
    // ... get content via ajax

    var cur = document.getElementById('current');
    var prev = document.createElement('div');

    prev.innerHTML = 'content';
    prev.marginLeft = '-600px'; // or whatever width is needed        

    $(prev).insertBefore($(cur)).animate({'margin-left': '0'}, 2000);
    $(cur).attr('id', '').remove;
    $(prev).attr('id', 'current');

    $(cur).remove();
});