jQuery tab選項卡程式碼詳解

admin發表於2018-12-01

tab選項卡優點有很多,比如讓網頁具有動態效果,可以在有限的空間容納更多的內容。

下面通過一段簡單程式碼例項詳解介紹一下如何實現此功能。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style type="text/css">
*{
  margin:0;
  padding:0;
}
body{
  font-size:12px;
  color:#404040;
}
.tabs {
  margin:10px 0 0 20px;
  width:360px;
  position:relative;
  overflow:hidden;
  height:160px;
}
.tabs span {
  width:95px;
  height:25px;
  line-height:25px;
  text-align:center;
  float:left;
  margin-right:5px;
  border:1px solid #d5d5d5;
  cursor:pointer;
}
span.active{
  background-color:#d5d5d5;
}
#tab-01, #tab-02, #tab-03{
  position:absolute;
  top:26px;
  left:0;
  width:338px;
  padding:10px;
  height:93px;
  border:1px solid #d5d5d5;
  z-index:1;
}
#tab-02, #tab-03{
  display:none;
}
</style>
<script src="https://code.jquery.com/jquery-3.0.0.js"></script>
<script type="text/javascript">  
$(document).ready(function () {  
  $('.tabs span').mouseover(function () {  
    $('.tabs div').hide();
    $(this).siblings('span')
           .removeClass('active')
           .end()
           .addClass('active')
           .next('div')
           .show();
  });  
});  
</script>
</head>
<body>
<div class="tabs"> 
  <span class="active">螞蟻部落一</span>
  <div id="tab-01">螞蟻部落一</div>
  <span>螞蟻部落二</span>
  <div id="tab-02">螞蟻部落二</div>
  <span>螞蟻部落三</span>
  <div id="tab-03">螞蟻部落三</div>
</div>
</body>
</html>

程式碼實現了我們的要求,下面介紹一下此選項卡的實現過程。

一.程式碼註釋:

(1).$(document).ready(function () { }),當文件結構完全載入完畢再去執行函式中的程式碼。

(2).$('.tabs span').mouseover(function () { }),為span元素註冊mouseover事件處理函式。

(3).$('.tabs div').hide(),首先將所有div元素隱藏。

(4).$(this).siblings('span'),獲取所有的兄弟span元素集合。

(5).removeClass('active'),再將移除所有兄弟span元素的名為active樣式類。

(6).end(),恢復到第一次破壞性操作之前,第一次破壞性操作是siblings('span'),之前就是$(this)。

(7).addClass('active'),為$(this),也就是當前懸浮的span元素新增樣式類active。

(8).next('div'),當前懸浮span元素的下一個div元素,也就是內容部分。

(9).show(),將內容部分顯示。

二.相關閱讀:

(1).mouseover事件參閱jQuery mouseover事件一章節。 

(2).hide()參閱jQuery hide()一章節。

(3).siblings()參閱jQuery siblings()一章節。

(4).removeClass()參閱jQuery removeClass()一章節。  

(5).end()參閱jQuery end()一章節。

(6).addClass()參閱jQuery addClass()一章節。 

(7).next()參閱jQuery next()一章節。 

(8).show()參閱jQuery show()一章節。 

相關文章