我是一个javascript noob,我想知道如何实现这个问题的答案?
Twitter Bootstrap Tabs: Go to Specific Tab on Page Reload or Hyperlink
我想在标签所在的同一页面上使用此代码....
<script type="text/javascript">
// Javascript to enable link to tab
var url = document.location.toString();
if (url.match('#')) {
$('.nav-tabs a[href=#'+url.split('#')[1]+']').tab('show') ;
}
// Change hash for page-reload
$('.nav-tabs a').on('shown', function (e) {
window.location.hash = e.target.hash;
})
</script>
我应该在包含标签的页面内插入。
再次,很抱歉这样的菜鸟。
答案 0 :(得分:4)
Bootstrap 3解决方案:
<script type="text/javascript">
$(function() {
// Javascript to enable link to tab
var url = document.location.toString();
if (url.match('#')) {
$('.nav-tabs a[href=#'+url.split('#')[1]+']').tab('show') ;
}
// Change hash for page-reload
$('a[data-toggle="tab"]').on('show.bs.tab', function (e) {
window.location.hash = e.target.hash;
});
});
</script>
答案 1 :(得分:1)
尝试将代码包装在$(document).ready()
函数
$(document).ready(function() {
//your code here...
});
上面的内容不起作用,因为DOM在运行时不会就绪。使用$(document).ready()
函数将延迟执行,直到加载dom。它几乎可以在包含选项卡的页面中的任何位置。有些人认为它应该在head
部分内,有些人认为它应该在最后。但请阅读此处以获得更深入的答案:Where do I put the $(document).ready()?
请参阅:http://docs.jquery.com/Tutorials:Introducing_ $(文档).ready()