Bootstrap标签页URL跳转定位实现问题及解决方案
Bootstrap标签页URL跳转定位实现问题及解决方案
我之前在某个帖子里找到一段代码,想实现Bootstrap标签页的URL跳转定位——就是打开带哈希的URL时能自动切换到对应标签页,还能保留点击标签时的URL哈希,但这段代码没法正常工作。现在的情况是标签已经有蓝色高亮了,但还是达不到预期效果。原帖里有人说需要修改代码但没说具体怎么改,我自己尝试把页面URL的前缀加进去也没用,还有人说这么改不会生效,但也没给解决办法,求帮忙!
我最初使用的代码
JavaScript代码
<script> $(function(){ var hash = window.location.hash; hash && $('ul.nav a[href="2025_dko_home_need_to_renew_join.php#' + hash + '"]').tab('show active'); $('.nav-tabs a').click(function (e) { $(this).tab('show'); var scrollmem = $('body').scrollTop(); window.location.hash = this.hash; $('html,body').scrollTop(scrollmem); }); }); </script>
标签页HTML代码
<div class="container-fluid"> <ul id="clothingnav1" class="nav nav-tabs" role="tablist"> <li class="nav-item"> <a class="nav-link active" href="#home1" id="hometab1" role="tab" data-toggle="tab" aria-controls="home" aria-expanded="true">Online Entry</a> </li> <li class="nav-item"> <a class="nav-link" href="#paneTwo1" role="tab" id="hatstab1" data-toggle="tab" aria-controls="hats">Advance Entries</a> </li> </div>
我原本期望的是,点击带tab_id的标签URL时,页面打开后能直接跳转到第二个标签页。
2026-01-17 更新:最终可用的解决方案
感谢@C3roe的帮助,现在已经实现了预期效果,以下是最终可用的代码,给遇到同样问题的朋友参考:
标签页HTML代码(和之前一致,无需修改)
<div class="container-fluid"> <ul id="clothingnav1" class="nav nav-tabs" role="tablist"> <li class="nav-item"> <a class="nav-link active" href="#home1" id="hometab1" role="tab" data-toggle="tab" aria-controls="home" aria-expanded="true">Online Entry</a> </li> <li class="nav-item"> <a class="nav-link" href="#paneTwo1" role="tab" id="hatstab1" data-toggle="tab" aria-controls="hats">Advance Entries</a> </li> </div>
修改后的JavaScript代码(需放在jQuery加载之后)
<!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> <script src="../../../js/jquery-3.4.1.min.js"></script> <!--Script must be after loading jquery--> <script> $(function(){ var hash = window.location.hash; hash && $('ul#clothingnav1 li:last-child a#hatstab1').tab('show'); $('.nav-tabs a').click(function (e) { $(this).tab('show'); var scrollmem = $('body').scrollTop(); window.location.hash = this.hash; $('html,body').scrollTop(scrollmem); }); }); </script>
备注:内容来源于stack exchange,提问作者zugzwang64
相关产品推荐
相关产品推荐

