jQuery UI の Tabs プラグインで作るタブ型メニューの cookie オプションについて。
cookie オプションを使うと、最後に開いたタブメニューがどれだったかをクッキー(cookie)に格納することができる。これにより、ページを再度開いたときに、前回の最後に開いたタブメニューの内容を表示させることができる。
cookie オプションを使うには、jQuery の Cookie プラグインが必要。
実装例(サンプル)
メニュー 1 の内容。
この実装例の、jQuery UI の CSS テーマは、デフォルトのテーマを読み込んで使っている。もちろん他の CSS テーマにも対応しているので、色々試してみるといい。
メニュー 2 の内容。
メニュー 3 の内容。
実装例の動作について
- 「メニュー 2」のタブメニューをクリックし、「メニュー 2」のタブメニューの内容を開く。
- ページをリロード(再読み込み)する。
- 「メニュー 2」のタブメニューの内容が表示される。
(cookie オプションを使用していない場合は、「メニュー 1」のタブメニューの内容が表示される。)
実装例のソースコード
読み込み
読み込み方は、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="jquery.cookie.js"></script>
<script type="text/javascript" src="ui/jquery-ui-1.8.12.custom.min.js"></script>
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" src="jquery.cookie.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="jquery.cookie.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>
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" src="jquery.cookie.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( '#tabs' ) . tabs( {
cookie: { expires: 3 }
} );
} );
// -->
</script>
<!--
jQuery( function() {
jQuery( '#tabs' ) . tabs( {
cookie: { expires: 3 }
} );
} );
// -->
</script>
HTML
<div id="tabs">
<ul>
<li><a href="#tabs-1">メニュー 1</a></li>
<li><a href="#tabs-2">メニュー 2</a></li>
<li><a href="#tabs-3">メニュー 3</a></li>
</ul>
<div id="tabs-1">
<p>メニュー 1 の内容。</p>
<p>この実装例の、jQuery UI の CSS テーマは、デフォルトのテーマを読み込んで使っている。もちろん他の CSS テーマにも対応しているので、色々試してみるといい。</p>
</div>
<div id="tabs-2">
<p>メニュー 2 の内容。</p>
</div>
<div id="tabs-3">
<p>メニュー 3 の内容。</p>
</div>
</div>
<ul>
<li><a href="#tabs-1">メニュー 1</a></li>
<li><a href="#tabs-2">メニュー 2</a></li>
<li><a href="#tabs-3">メニュー 3</a></li>
</ul>
<div id="tabs-1">
<p>メニュー 1 の内容。</p>
<p>この実装例の、jQuery UI の CSS テーマは、デフォルトのテーマを読み込んで使っている。もちろん他の CSS テーマにも対応しているので、色々試してみるといい。</p>
</div>
<div id="tabs-2">
<p>メニュー 2 の内容。</p>
</div>
<div id="tabs-3">
<p>メニュー 3 の内容。</p>
</div>
</div>