デモ:APIによるタブ操作

jQuery toolsによる「APIによるタブ操作」の動作デモです。

First pane

Second pane

Third pane

サンプルコード

HTMLのサンプル

<ul class="slidetabs">
		<li><a href="#tab1" class="tab1"><span class="label">1</span></a></li>
		<li><a href="#tab2" class="tab2"><span class="label">2</span></a></li>
		<li><a href="#tab3" class="tab3"><span class="label">3</span></a></li>
	</ul>
	
	<div class="panes">
		<div class="item pane1">
			<h3 class="line">First pane</h3>
		</div>
		<div class="item pane2">
			<h3 class="line">Second pane</h3>
		</div>
		<div class="item pane3">
			<h3 class="line">Third pane</h3>
		</div>
	</div>
	
	<div class="btnArea">	
		<button id="act1">destroy()</button>
		<button id="act2">conf()</button>
		<button id="act3">next()</button>
		<button id="act4">prev()</button>
		<button id="act5">click(0)</button>
	</div>

CSSのサンプル

/* パネルを囲う要素 */
#example .panes {
	position:relative;	
	width:400px;
	height:240px;
	margin-bottom: 10px;
	cursor:pointer;
}

/* パネル */
#example .item {
	position: absolute;
	border: solid 3px #ccc;
	display:none;
	height:240px;
	width:400px;
	border-radius:5px;
	-moz-border-radius: 10px;
	-webkit-border-radius: 10px;
	-ms-border-radius: 10px;
}
#example .pane1{
	background: url(http://nekodama.sakura.ne.jp/images/webdev/jquerytools/tabSet/pic_cat1_org.jpg) no-repeat;
}
#example .pane2{
	background: url(http://nekodama.sakura.ne.jp/images/webdev/jquerytools/tabSet/pic_cat2_org.jpg) no-repeat;
}
#example .pane3{
	background: url(http://nekodama.sakura.ne.jp/images/webdev/jquerytools/tabSet/pic_cat3_org.jpg) no-repeat;
}
/* パネル内のライン */
#example .panes .line {
	display:block;
	background: #333;
	opacity: 0.8;
	color: #fff;
	margin-top: 10px;
	padding: 2px 5px;
}

/* タブを囲う要素 */
#example .slidetabs{
	width:100%;
	overflow:hidden;
}
/* タブ */
#example .slidetabs li{
	float:left;
	width: 100px;
	height: 30px;
	margin-left: 10px;
}
#example .slidetabs li a{
	display: block;
	width: 100px;
	height: 30px;
	margin-top: 10px;
	border-top: solid 3px #ccc;
	border-left: solid 3px #ccc;
	border-right: solid 3px #ccc;
	border-radius-topleft: 10px;
	border-radius-topright: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-topright: 10px;
	-webkit-border-radius-topleft: 10px;
	-webkit-border-radius-topright: 10px;
	-ms-border-radius-topleft: 10px;
	-ms-border-radius-topright: 10px;
}
#example .slidetabs .label{
	background: #333;
	opacity: 0.8;
	color: #fff;
	margin-top: 10px;
	padding: 2px 5px;
}
#example .slidetabs .tab1{
	background: url(http://nekodama.sakura.ne.jp/images/webdev/jquerytools/tabSet/pic_cat1_thumb.jpg) no-repeat;
}
#example .slidetabs .tab2{
	background: url(http://nekodama.sakura.ne.jp/images/webdev/jquerytools/tabSet/pic_cat2_thumb.jpg) no-repeat;
}
#example .slidetabs .tab3{
	background: url(http://nekodama.sakura.ne.jp/images/webdev/jquerytools/tabSet/pic_cat3_thumb.jpg) no-repeat;
}
#example .slidetabs .current{
	margin-top: 0;
	height: 40px;
	border-color: orange;
}
/* ボタンエリア */
#example .btnArea{
	clear:both;
	width:394px;
	overflow: hidden;
	margin-bottom: 5px;
	padding: 5px;
	border:solid 1px #eee;
}

Javascriptのサンプル

$(function() {
	// フルオプションの例
	var api = $(".slidetabs").tabs(".panes > div", {
		api: true
	})
	$("#act1").click(function (){
		api.destroy();
	});
	$("#act2").click(function (){
		var conf = api.getConf();
		// rotateの設定を取得します
		alert(conf["rotate"]);
	});
	$("#act3").click(function (){
		api.next();
	});
	$("#act4").click(function (){
		api.prev();
	});
	$("#act5").click(function (){
		api.click(0);
	});
});