要實現這樣的功能,點擊tab導航ajax動態加載頁面,當加載過之後,點擊則不再重新加載,直接顯示原來加載的頁面。
tab頁面代碼:
<!-- Nav tabs -->
<ul class="nav nav-tabs" role="tablist" id="maintab">
<li class="active"><a href="#tab1" onclick='showPage("tab1","tab1.php")'>tab1</a></li>
<li><a href="#tab2" onclick='showPage("tab2","tab2.php")'>tab2</a></li>
<li><a href="#tab3" onclick='showPage("tab3","tab3.php")'>tab3</a></li>
<li><a href="#tab4" onclick='showPage("tab4","tab4.php")'>tab4</a></li>
</ul>
<!-- Tab panes -->
<div class="tab-content">
<div class="tab-pane active" id="tab1"></div>
<div class="tab-pane" id="tab2"></div>
<div class="tab-pane" id="tab3"></div>
<div class="tab-pane" id="tab4"></div>
</div>
javascript:
<script language="javascript">
var loadimg="./img/load2.gif"; // 加載時的loading圖片
function showPage(tabId, url){
$('#maintab a[href="#'+tabId+'"]').tab('show'); // 顯示點擊的tab頁面
if($('#'+tabId).html().length<20){ // 當tab頁面內容小於20個字節時ajax加載新頁面
$('#'+tabId).html('<br>'+loadimg+' 頁面加載中,請稍後...'); // 設置頁面加載時的loading圖片
$('#'+tabId).load(url); // ajax加載頁面
}
}
</script>