点击li,跳转到下一个li。

3

我找不到一个简单的解决方案,我知道这很容易,我尝试了几个方法,但是我无法使其正常工作。我目前正在处理一个侧滑网站,每次单击图像(包含在li中)时,我希望它滚动到下一个li。我有jQuery插件localscroll,所以它可以平稳地从一个滚动到下一个,并且正在工作。现在我需要编写一个代码来触发jQuery使用localscroll函数并转到下一个li。现在我有这个,但我知道它不正确:

$(document).ready(function () {
    $('.wrapper ul li').click(function() {
     $(this).next(li).localScroll();
    });
});

可能是因为你在第三行忘记在'li'周围加上引号了。 - nickf
2个回答

1
根据ScrollTo examples,你需要这样做:
$(container).scrollTo(element);

例如

$(document).ready(function () {
    $('.wrapper ul li').click(function() {
        $(window).scrollTo($(this).next('li'));
    });
});

刚刚上传了一个带有那段代码的演示,它也没有正常运行。 - steve
@steve,看起来你的点击处理程序没有被调用。这可能是你没有看到任何结果的原因。=] - strager
@steve,你试图使用.wrapper引用#wrapper - strager
啊,太好了,问题解决了。现在唯一的问题是它跳转到下一个,而不是滑动到下一个...这是因为我调用的是scrollTo而不是localScroll吗? - steve
修复了!我刚刚在上面的.scrollTo()函数中添加了时间和缓动参数。谢谢。 - steve

0
阅读了这里的文档后,我找到了正确使用它的方法。假设您想要滚动的元素是.overflowing或.wrapper元素,您可以执行以下操作。
$(document).ready(function () {
    var gallery = $('.wrapper ul li')

    $(gallery).click(function() {
           $('.wrapper').localScroll({
              target:$(this).next('li')
            });

    });
});

嗯...似乎没有任何效果。我将上传一个演示。 - steve

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