点击

时间:2015-10-22 16:33:30

标签: javascript jquery offset scrolltop

我有一个从循环创建的按钮列表。单击这些按钮会在块中显示下面的不同数据(子页面内容)。每个按钮显示来自不同子页面的数据。

所以按钮有一个.service-tab类 内容块有一类.services-content

我尝试过如下jQuery:

$('.service-tab').click(function() {
    $('html,body').animate({
        scrollTop: $(".services-content").offset().top},
'slow');

这些似乎适用于我先点击的任何按钮。然后,当我向上滚动页面以单击另一个按钮而不是再次向下时,以便.services-content再次与页面顶部对齐,它会关闭,您点击任何按钮后页面再次关闭的次数就越多。 (根据页面的位置随机选择,如果单击按钮,它将再次按预期工作)。

我假设由于JS开始注意页面位置并根据此移动?

1 个答案:

答案 0 :(得分:0)

做旧学校,使用锚。您的按钮全部为<a href="#someElementId">,您的目标应使用id代替(或除了)课程。不需要jQuery或JavaScript。