2012-10-04 58 views
1

我使用了一些来自twitters bootstrap的代码,这是一种navbar选项卡。从另一页访问div选项卡

这些选项卡似乎是使用#tab功能检索的。比方说这个菜单上名为index.php的

<div class="bs-docs-example"> 
    <div class="tabbable tabs-left"> 
     <ul class="nav nav-tabs"> 
     <li class="active"><a href="#tab1" data-toggle="tab">Section 1</a></li> 
     <li><a href="#tab2" data-toggle="tab">Section 2</a></li> 
     <li><a href="#tab3" data-toggle="tab">Section 3</a></li> 
     </ul> 
     <div class="tab-content"> 
     <div class="tab-pane active" id="tab1"> 
      <p>I'm in Section A.</p> 
     </div> 
     <div class="tab-pane" id="tab2"> 
      <p>Howdy, I'm in Section B.</p> 
     </div> 
     <div class="tab-pane" id="tab3"> 
      <p>What up girl, this is Section C.</p> 
     </div> 
     </div> 
    </div> 
    </div> 

文件,但如何从像main.php另一个页面直接跳转到TAB2?你明白我的意思吗? 我尝试:

<a href="index.php#tab2">link to tab2</a> 

<a href="index.php#tab2" data-toggle="tab">link to tab2</a> 

,但它不工作...,不若数据切换=“标签”由于某种原因需要知道吗?

任何提示赞赏!

+0

如果你会使用jquery.tabs()(在jQuery UI中找到),那么它的工作原理。 – jtheman

+0

嗯,好的,我该怎么做?我是一个新手... –

+0

jtheman:我如何能做到这一点的任何提示?我的知识在这方面有点“不存在”! –

回答

0

使用jquery easytabs插件解决这个很简单。阅读和下载插件:http://os.alfajango.com/easytabs/记住安装jQuery和其他的Javascript

HTML:

<head> <!-- other markup --> 
    <script src="/javascripts/jquery.js" type="text/javascript"></script> 
    <script src="/javascripts/jquery.hashchange.js" type="text/javascript"></script> 
    <script src="/javascripts/jquery.easytabs.js" type="text/javascript"></script> 
    <script type="text/javascript"> 
     $(function() { 
      $('#tab-container').easytabs(); 
     }); 
    </script> 
</head> 
<body> 



<div id="tab-container" class="tab-container"> 
<ul class='etabs'> 
    <li class='tab'><a href="#tabs1-html">HTML Markup</a></li> 
    <li class='tab'><a href="#tabs1-js">Required JS</a></li> 
    <li class='tab'><a href="#tabs1-css">Example CSS</a></li> 
</ul> 
<div id="tabs1-html"> 
    <h2>HTML Markup for these tabs</h2> 
    <!-- content --> 
</div> 
<div id="tabs1-js"> 
    <h2>JS for these tabs</h2> 
    <!-- content --> 
</div> 
<div id="tabs1-css"> 
    <h2>CSS Styles for these tabs</h2> 
    <!-- content --> 
</div> 

CSS:

.etabs { margin: 0; padding: 0; } 
.tab { display: inline-block; zoom:1; *display:inline; background: #eee; border: solid 1px #999; border-bottom: none; -moz-border-radius: 4px 4px 0 0; -webkit-border-radius: 4px 4px 0 0; } 
.tab a { font-size: 14px; line-height: 2em; display: block; padding: 0 10px; outline: none; } 
.tab a:hover { text-decoration: underline; } 
.tab.active { background: #fff; padding-top: 6px; position: relative; top: 1px; border-color: #666; } 
.tab a.active { font-weight: bold; } 
.tab-container .panel-container { background: #fff; border: solid #666 1px; padding: 10px; -moz-border-radius: 0 4px 4px 4px; -webkit-border-radius: 0 4px 4px 4px; } 
+0

嗨,thx为keeiping与我,即时通讯使用bootstrap,该如何标记看起来像?有没有办法在bootstrap-tabs.js中找到它? –

+0

@FredrikTornell Aha,更简单,那么你已经实现了jQuery UI选项卡。所以要访问哈希看到我的其他答案... – jtheman

0

使用引导程序和所包含的jQuery UI,实现的导航哈希非常简单。使用这样的Javascript

$(function() { 
    var gotoTab = $('[href=' + location.hash + ']'); 
    gotoTab && gotoTab.tab('show'); 
}); 

但是,这不适用于历史记录或后退按钮。所以这是使用javascript进行制表导航的一个缺点。我不知道有没有其他解决方案?

+0

而这个JavaScript应该放在头部分?然后我可以使用链接来访问第二页像index.php #tab2正确吗? –

+0

试图index.php?ID = 38#add_comment和add_comment是该选项卡的ID我想访问... dosnt工作,我把你的代码放在标题 –

+0

@FredrikTornell当然,在头上或任何地方。你以前加载过标签代码吗?试试$('#tab3')。tab('show');在函数调用,看看这是否得到页面加载默认?也许你可以将所有的JavaScript代码也发布到上面的问题? – jtheman

相关问题