jQuery UI の Tabs によるタブメニューで、最初に表示するタブを指定

jQuery UI の Tabs プラグインを使ったタブ型メニューにおいて、ページ読み込み時に表示するタブを指定する方法。selected オプションの値に、ページ読み込み時に表示させたいタブの配列のインデックスを指定する。1つ目のタブは「0」、2つめのタブは「1」、3つめのタブは「2」を指定する。

実装例(サンプル)

タブメニュー①の内容。

内容が長くなり、指定したサイズに収まらない場合、スクロールバーが表示される。

この実装例の、jQuery UI の CSS テーマは、デフォルトのテーマを読み込んで使っている。もちろん他の CSS テーマにも対応しているので、色々試してみるといい。

タブメニュー②の内容。

ページ読み込み時に、タブメニュー②の内容を表示させるように設定した。

タブメニュー③の内容。

実装例(サンプル)の動作について

ページ読み込み時は、タブメニュー②の内容を表示する。

「タブメニュー①」「タブメニュー②」「タブメニュー③」のタブメニューをクリックすると、クリックしたタブメニューの内容を開く。

実装例のソースコード

読み込み

読み込み方は、2種類ある。パスは、それぞれ、アップロードした場所を指定する。

まとめて読み込む場合
<link rel="stylesheet" href="themes/base/jquery.ui.all.css">
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" src="ui/jquery-ui-1.8.12.custom.min.js"></script>
個別に読み込む場合
<link rel="stylesheet" href="themes/base/jquery.ui.all.css">
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" src="ui/jquery.ui.core.js"></script>
<script type="text/javascript" src="ui/jquery.ui.widget.js"></script>
<script type="text/javascript" src="ui/jquery.ui.tabs.js"></script>

JavaScript

<script type="text/javascript">  
<!--
jQuery( function() {
    jQuery( '#jquery-ui-tabs' ) . tabs( {
        selected: 1,
    } );
} );
// -->
</script>

selected オプションに指定する値は、配列のインデックスなので、1つ目のタブは「0」、2つめのタブは「1」、3つめのタブは「2」のように、実際の順番より1つ少ない数字を指定する。

CSS

<style>
<!--
#jquery-ui-tabs {
    font-size: 16px;
}
#jquery-ui-tabs .ui-tabs-panel {
    overflow: auto;
    height: 100px;
}
-->
</style>

HTML

<div id="jquery-ui-tabs">
    <ul>
        <li><a href="#jquery-ui-tabs-1">タブメニュー①</a></li>
        <li><a href="#jquery-ui-tabs-2">メタブメニュー②</a></li>
        <li><a href="#jquery-ui-tabs-3">タブメニュー③</a></li>
    </ul>
    <div id="jquery-ui-tabs-1">
        <p>タブメニュー①の内容。</p>
        <p>内容が長くなり、指定したサイズに収まらない場合、スクロールバーが表示される。</p>
        <p>この実装例の、jQuery UI の CSS テーマは、デフォルトのテーマを読み込んで使っている。もちろん他の CSS テーマにも対応しているので、色々試してみるといい。</p>
    </div>
    <div id="jquery-ui-tabs-2">
        <p>タブメニュー②の内容。</p>
        <p>ページ読み込み時に、タブメニュー②の内容を表示させるように設定した。</p>
    </div>
    <div id="jquery-ui-tabs-3">
        <p>タブメニュー③の内容。</p>
    </div>
</div>

スポンサード リンク

カテゴリー: JavaScript, jQuery, jQuery UI, Tabs, メニュー パーマリンク