JS Smooth Scroll不使用选项卡

时间:2015-10-05 12:53:36

标签: javascript jquery html css tabs

我遇到了一些代码问题。我有一组标签,每个标签都有内容。当用户单击选项卡时,我希望它打开选项卡内容并平滑滚动到选项卡内容中的锚点。目前,我有以下代码打开活动标签内容并滚动到锚点。但是,它不会平滑滚动,它只会跳转到锚点。有人可以帮助我,以便顺利滚动到锚点吗?我将不胜感激任何帮助。

Current Fiddle that shows the jump

My website with a live example of what happens

代码

data = open('tweets_testing.json').read()
vals = json.loads(data)

HTML标签

var hrefname = null;

$('a').click(function () {
var $tab = $(this).closest('li')
if (!$tab.hasClass("active")) {
var tabNum = $tab.index();
var nthChild = tabNum + 1;
$("ul#tabs li.active").removeClass("active");
$(this).addClass("active");
$("ul#tab li.active").removeClass("active").hide();
$("ul#tab li:nth-child(" + nthChild + ")").addClass("active").show();
}
setTimeout(function () {
$('html, body').animate({
    scrollTop: $('[name="' + hrefname + '"]').offset().top
}, 500);
var href = $('a').attr('href');
console.log(href);
hrefname = href;
return false;
}, 10000);
});

<ul id="tabs">
<li class="active"><a href="#features" class="smoothScroll">FEATURES</a>  </li>
<li><a href="#specs" class="smoothScroll">SPECIFICATIONS</a></li>
<li><a href="#config" class="smoothScroll">COMPARE CONFIGURATIONS</a></li>

CSS(感兴趣的人)

<ul id="tab">
<li class="active">
    <a name="features"></a>Content 1
</li>

<li>
    <a name="specs"></a>Content 2
</li>

  <li>
    <a name="config"></a>Content 3
</li>

0 个答案:

没有答案