TreeView即樹形視圖。TreeView通常被佈置在頁面的側邊欄位置,並可摺疊收縮。javascript
如下用兩個示例來展現TreeView形式的網站導航功能。css
1、普通TreeView前端
原理:經過設定上層節點中特定元素的鼠標單擊觸發事件,對下層子節點進行顯示樣式更改。java
實現步驟:jquery
1.獲取須要響應鼠標單擊事件的上層節點元素對象。ide
2.對鼠標單擊事件進行加工,修改子節點樣式。函數
<script type="text/javascript" src="jslib/jquery-1.8.3.js"></script>動畫
<script type="text/javascript" >網站
$(document).ready(this
function(){
$(".pe_u_thumb_list").children("img").toggle(
/*對父節點中的圖片元素設定觸發事件*/
function(){ /*鼠標單擊圖片奇數次時隱藏下層節點*/
$(this).parent().next("ul").hide();
},
function(){/*鼠標單擊圖片偶數次時展開下層節點*/
$(this).parent().next("ul").show();
}
);<!--end of toggle-->
}
);
</script>
<style type="text/css">
ul { list-style:none; }
</style>
</head>
<body>
<ul>
<li class="pe_u_thumb_list"><img src="p_w_picpaths/listicon.jpg" /><a href="#">CSS</a></li>
<ul>
<li>級聯樣式</li>
<li>統一設定標記元素樣式</li>
</ul>
<li class="pe_u_thumb_list"><img src="p_w_picpaths/listicon.jpg"/><a href="#">Javascript</a></li>
<ul>
<li>網頁前端腳本語言</li>
<li>對事件響應實現網頁動態效果</li>
</ul>
</ul>
</body>
效果以下所示:
2、加入淡入淡出效果的TreeView
實現步驟:
1.取得要顯示的節點對象,並在其上定義單擊事件
2.在單擊事件中取得後續標記元素對象總體,並在其上加入切換顯示狀態動畫。
代碼中用到的部分函數或方法:
1.jQuery遍歷——nextAll()方法,該方法得到匹配元素集合中每一個元素的全部跟隨的同胞元素,
語法:.nextAll(selector)
2.jQuery效果——toggle()方法,該方法切換元素的可見狀態,若是被選元素可見,則隱藏這些元素,若是被選元素隱藏,則顯示這些元素。
語法:$(selector).toggle(speed,callback,switch)
代碼以下:
<script type="text/javascript">
$(document).ready(
function(){
var main = $("ul > a"); <!--">"爲CSS子元素選擇器-->
main.click(function(){
var sub = $(this);
var item = sub.nextAll("li");/*取得表明TreeView全部子節點的元素對象*/
item.toggle("slow");/*修改子節點顯示狀態*/
});
}
);
</script>
<style>
ul { list-style:none;}
</style>
</head>
<body>
<ul><a href="#"><strong>西安郵電大學</strong></a>
<li><img src="p_w_picpaths/listicon.jpg" /><a href="http://www.xupt.edu.cn">計算機學院</a></li>
<li><img src="p_w_picpaths/listicon.jpg" /><a href="#">通訊與信息工程學院</a></li>
<li><img src="p_w_picpaths/listicon.jpg" /><a href="#">電子工程學院</a></li>
</ul>
<ul><a href="#"><strong>陝西師範大學</strong></a>
<li><img src="p_w_picpaths/listicon.jpg" /><a href="http://www.snnu.edu.cn">計算機科學學院</a></li>
<li><img src="p_w_picpaths/listicon.jpg" /><a href="#">歷史文化學院</a></li>
<li><img src="p_w_picpaths/listicon.jpg" /><a href="#">外國語學院</a></li>
</ul>
</body>
效果以下:
點擊「西安郵電大學」幾個字,下面的學院信息被隱藏: