Нужно, чтобы при заходе на ссылку якоря открывалась соответствующая вкладка табуляции.
В принципе, вкладка открывается (и при переключении модифицируется адрес ссылки в браузере), но, не могу избавиться от прокрутки окна до якоря при заходе через адресную строку браузера.
Не срабатывает скролл наверх. Что я делаю не так?
$('.nav-tabs a').on('shown.bs.tab', function (e) {
var sm = $('body').scrollTop();
if (history.pushState) {
history.pushState(null, null, e.target.hash);
} else {
window.location.hash = e.target.hash;
}
alert(sm);
$('html,body').scrollTop(sm);
});
var url = document.location.toString();
if (url.match('#')) {
$('.nav-tabs a[href="#' + url.split('#')[1] + '"]').tab('show');
};
<div>
<ul class="nav nav-tabs" role="tablist">
<li class="active" role="presentation">
<a href="#tab_edu_bach" role="tab" data-toggle="tab">Бакалавриат</a>
</li>
<li role="presentation">
<a href="#tab_edu_spec" role="tab" data-toggle="tab">Специалитет</a>
</li>
<li role="presentation">
<a href="#tab_edu_mag" role="tab" data-toggle="tab">Магистратура</a>
</li>
<li role="presentation">
<a href="#tab_edu_aspir" role="tab" data-toggle="tab">Аспирантура</a>
</li>
</ul>
<div class="tab-content">
<div id="tab_edu_bach" class="tab-pane active" role="tabpanel">
Бакалавриат текст
</div>
<div id="tab_edu_spec" class="tab-pane" role="tabpanel">
Специалитет текст
</div>
<div id="tab_edu_mag" class="tab-pane" role="tabpanel">
Магистратура текст
</div>
<div id="tab_edu_aspir" class="tab-pane" role="tabpanel">
Аспирантура текст
</div>
</div>
</div>