Twitter Bootstrap の bootstrap-tab.js を使用すると、次のようになります。
<ul class="tabnavcenter" id="myTab">
<li class="active"><a href="#home" data-toggle="tab">about</a></li>
<li><a href="#tab2" data-toggle="tab">education</a></li>
<li><a href="#tab3" data-toggle="tab">experience</a></li>
<li><a href="#tab4" data-toggle="tab">verified skills</a></li>
<li><a href="#tab5" data-toggle="tab"> video</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="home">Content 1</div>
<div class="tab-pane" id="profile">...</div>
<div class="tab-pane" id="messages">...</div>
<div class="tab-pane" id="settings">...</div>
</div>
私が置くとどうすればそれを得ることができますか:
<div class="tab-content">
<div class="tab-pane active" id="home">Content 2</div>
</div>
...プロファイル内の 2 つの場所 (ナビゲーションバーの上と下に 1 つずつ) で、それぞれに異なるコンテンツがある場合、機能しますか? 今のところ、コンテンツは表示されますが、クリックすると消えます。同時に 2 つの「アクティブな」リーが存在することはありますか?
編集:
Rails 3.2 アプリでこれを使用しているため、現在、bootstrap-tab.js には次のものが含まれています。
$('#myTab a').click(function (e) {
e.preventDefault();
$(this).tab('show');
})
$('#myTab a[href="#home"]').tab('show');
$('#myTab a[href="#tab2"]').tab('show');
$('#myTab a[href="#tab3"]').tab('show');
$('#myTab a[href="#tab4"]').tab('show');
$('#myTab a[href="#tab5"]').tab('show');
$('#myTab a[href="#home2"]').tab('show');
$('#myTab a[href="#tab22"]').tab('show');
そして、user_body.html.erb に以下を入れた後:
<script type="text/javascript">
$(function () {
$('#myTab >li>a').on('click', function (e) {
e.preventDefault();
$(this).tab('show');
//
$(this.getAttribute('href') + '2').html($(this).html());
});
});
...ページを更新した後、div の 2 番目のコンテンツを取得します。2 番目のタブをクリックしても変化はありません。最初のタブをクリックすると、最初の 'a' の名前に戻ります。
それは混乱です。