Есть у меня табы от bootstrap3, нашел скрипт который по ссылке сразу перенаправляет до открытых табов, но пришлось добавить еще один таб и по итогу на него именно это не работает совсем, как это решить? табы идентичные почти ID другие. Вот изначальный скрипт
$(document).ready(() => {
let url = location.href.replace(/\/$/, "");
if (location.hash) {
const hash = url.split("#");
$('#myTab a[href="#'+hash[1]+'"]').tab("show");
url = location.href.replace(/\/#/, "#");
history.replaceState(null, null, url);
}
$('a[data-toggle="tab"]').on("click", function() {
let newUrl;
const hash = $(this).attr("href");
if(hash == "#home") {
newUrl = url.split("#")[0];
} else {
newUrl = url.split("#")[0] + hash;
}
newUrl += "/";
history.replaceState(null, null, newUrl);
});
});
табы типичные обычные
<ul class="nav nav-tabs" id="myTab" role="tablist">
<li role="presentation" class="active"><a href="#shapkacat" aria-controls="shapkacat" role="tab" data-toggle="tab">1</a></li>
<li role="presentation"><a class="anchor"href="#fartukcat" aria-controls="fartukcat" role="tab" data-toggle="tab">2</a></li>
</ul>
<div class="tab-content">
<div role="tabpanel" class="tab-pane active" id="shapkacat">
1
</div>
<div role="tabpanel" class="tab-pane" id="fartukcat">
2
</div>
</div>
<ul class="nav nav-tabs" id="mynewTab" role="tablist">
<li role="presentation" class="active"><a href="#shapkacatnew" aria-controls="shapkacatnew" role="tab" data-toggle="tab">1</a></li>
<li role="presentation"><a class="anchor"href="#fartukcatnew" aria-controls="fartukcatnew" role="tab" data-toggle="tab">2</a></li>
</ul>
<div class="tab-content">
<div role="tabpanel" class="tab-pane active" id="shapkacatnew">
1
</div>
<div role="tabpanel" class="tab-pane" id="fartukcatnew">
2
</div>
</div>
Пытался так
if (location.hash) {
const hash = url.split("#");
$('#myTab a[href="#'+hash[1]+'"]').tab("show");
$('#mynewTab a[href="#'+hash[1]+'"]').tab("show");
url = location.href.replace(/\/#/, "#");
history.replaceState(null, null, url);
}
или дублировал
if (location.hash) {
const hash = url.split("#");
$('#myTab a[href="#'+hash[1]+'"]').tab("show");
url = location.href.replace(/\/#/, "#");
history.replaceState(null, null, url);
}
if (location.hash) {
const hash = url.split("#");
$('#mynewTab a[href="#'+hash[1]+'"]').tab("show");
url = location.href.replace(/\/#/, "#");
history.replaceState(null, null, url);
}