點選平滑下拉展開摺疊樹形導航選單

admin發表於2018-05-28

本章節分享一段程式碼例項,它實現了點選展開或者摺疊樹形導航選單效果。

程式碼例項如下:

[HTML] 純文字檢視 複製程式碼執行程式碼
<!DOCTYPE html>
<html>
<head>
<meta charset=" utf-8">
<meta name="author" content="http://www.softwhy.com/" />
<title>螞蟻部落</title>
<style>
body{font-size:10.5pt;}
dt{
  background:#ccc;
  width:500px;
}
</style>
<script src="http://libs.baidu.com/jquery/1.9.0/jquery.js"></script>
<script type="text/javascript">
$(document).ready(function() {
  $('#faq').find('dd').hide();
  $('#faq').find('dt').click(function() {
    var answer = $(this).next();
    if (answer.is(':visible')) {
      answer.slideUp();
    } else {
      answer.slideDown();
    }
  });
});
</script>
</head>
<body>
<dl id="faq">
  <dt>螞蟻部落</dt>
  <dd>歡迎來到螞蟻部落,希望提供良好的建議與意見</dd>
  <dt>前端教程</dt>
  <dd>div教程</dd>
  <dt>後臺教程</dt>
  <dd>本站的url地址是softwhy.com</dd>
</dl>
</body>
</html>

上面的程式碼實現了我們的要求,下面介紹一下它的實現過程。

一.程式碼註釋:

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

(2).$('#faq').find('dd').hide(),隱藏dd元素,也就是隱藏二級選單。

(3).$('#faq').find('dt').click(function() {}),為dt元素註冊click事件處理函式。

(4).var answer = $(this).next(),獲取點選元素的下一個元素,在本程式碼中就是dt元素後面的dd元素。

(5).if (answer.is(':visible')) {

  answer.slideUp();

} else {

  answer.slideDown();

},判斷元素是否顯示,如果顯示就動畫方式隱藏。

否則的話,就動畫方式下拉。

二.相關閱讀:

(1).find()參閱jQuery find()一章節。

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

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

(4).:visible參閱jQuery :visible一章節。

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

相關文章