我当前正在使用bootsrap。
我有一个主要的导航菜单。
我正在将主导航下拉菜单上的每个部分链接到另一页,带有特定的ID,这是另一个页面上的一组选项卡。
(Visual Composer Tabs -WordPress)
下面的哈希更改函数显示页面顶部一秒钟,但是它仍然滚动到哈希...
更新hashchange不起作用
$(window).on('hashchange',function(e){
document.body.scrollTop = 0;
e.preventDefault();
});
更新 - jQuery不起作用
$('.link-2').click(function() {
$('html,body').animate({ scrollTop: $("#1234567891011").offset().top });
});
我直接链接它,以便在单击链接时将选项卡显示为活动。
我的代码在下面。
<li class="dropdown">
<a class="dropdown-toggle" data-toggle="dropdown" href="http://myURL#123456789">Title<span class="caret"></span></a>
<ul class="dropdown-menu">
<li>
<a class="link-2" href="http://myURL#1234567891011">Tab Link 1</a>
</li>
<li>
<a class="link-3" href="http://myURL#1234567891011">Tab Link 2</a>
</li>
</ul>
</li>
问题在于打开链接时,它会自动使用该ID到该标签部分,该链路将一半的信息切成一半,然后在选项卡之前删除了一半的信息。
我需要它在页面顶部加载,但仍保持标签活动。我该如何使用jQuery?
更改hash不要触发滚动
将您的哈希人更改为:#TAB_1234567891011在页面中,您要导航,通过拆分此哈希来获取标签的ID
id = window.location.hash.split('_')[1];
使用新ID激活标签:
$('#'+id).tab('show');