由簡(jiǎn)入繁實(shí)現(xiàn)Jquery樹狀結(jié)構(gòu)的方法(推薦)
在項(xiàng)目中,我們經(jīng)常會(huì)需要一些樹狀結(jié)構(gòu)的樣式來顯示層級(jí)結(jié)構(gòu)等,比如下圖的樣式,之前在學(xué).net的時(shí)候可以直接拖個(gè)服務(wù)端控件過來直接使用非常方便。但是利用Jquery的一些插件,也是可以實(shí)現(xiàn)這些效果的,比如說Jquery.treeview.js插件。
下面就直入主題,開始從簡(jiǎn)入繁的分析怎么使用treeview插件,從已知的知識(shí)開始輕松入手,讓樹狀結(jié)構(gòu)唾手可得?!?/span>
顯示樹狀結(jié)構(gòu)的幾個(gè)實(shí)現(xiàn)步驟:
一、HTML做初始靜態(tài)原型。
首先通過<ul></ul><li></li>展示樹狀基本結(jié)構(gòu),還原其最初的樣子:
相信學(xué)過一點(diǎn)HTML的同學(xué)都可以實(shí)現(xiàn)吧,在“tree.html”中寫如下代碼:
<ul> <li>系統(tǒng)管理 <ul> <li>部門管理</li> <li>崗位管理 <ul> <li>崗位添加</li> <li>崗位刪除</li> </ul> </li> <li><用戶管理 <ul> <li>添加用戶</li> <li>修改用戶</li> </ul> </li> </ul> </li> <li>審批流轉(zhuǎn)</li> </ul>
我們靜態(tài)的樹形結(jié)構(gòu)的草本如下:
二、加入treeview插件庫(kù),實(shí)現(xiàn)動(dòng)態(tài)樹狀結(jié)構(gòu)。
在有了基本靜態(tài)的樹狀模型以后,我們需要實(shí)現(xiàn)一個(gè)動(dòng)態(tài)的結(jié)構(gòu),那么,我們的大菜就要上場(chǎng)了。
1、首先搜索Jquery.treeview.js插件進(jìn)行下載,或直接進(jìn)入下面的網(wǎng)址進(jìn)行下載插件包:
http://bassistance.de/jquery-plugins/jquery-plugin-treeview/
2、下載壓縮包解壓到相應(yīng)文件夾內(nèi),將之間的靜態(tài)頁(yè)面tree.html放到根目錄下:
3、在tree.html中導(dǎo)入js和css文件。
<!-- 導(dǎo)入js和CSS--> <link rel="stylesheet" href="jquery.treeview.css" /> <script src="lib/jquery.js" type="text/javascript"></script> <script src="lib/jquery.cookie.js" type="text/javascript"></script> <script src="jquery.treeview.js" type="text/javascript"></script>
4、使用<ul>展示數(shù)據(jù),為了方便得到樹,在最外邊的<ul>標(biāo)簽里加入Id為tree,如下
5、顯示我們的樹狀結(jié)構(gòu)(加上行為)。
在js里,我們只需要一行代碼:
在<ul></ul>標(biāo)簽下加入js代碼:
<script type="text/javascript"> $("#tree").treeview(); </script>
我們的動(dòng)態(tài)的樹狀結(jié)構(gòu)的初步樣式如下,已經(jīng)可以自由的收起和展示了:
6、顯示樹狀結(jié)構(gòu)(加上樣式)。
上面的樣式離我們最初想要的結(jié)果還差一點(diǎn)樣式,比如說各項(xiàng)之前的文件夾圖標(biāo)。下面我們可以加上樣式,從而完成整個(gè)樹狀結(jié)構(gòu)的展示。
6.1在樹的根節(jié)點(diǎn)<ul>標(biāo)簽中加入 class="filetree"。
6.2在各項(xiàng)節(jié)點(diǎn)前加入文件夾<span>標(biāo)簽:比如:<span class="folder">系統(tǒng)管理</span>。
整體tree.html代碼如下:
<!DOCTYPE html pageEncoding="utf-8"> <html> <head> <title>tree.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <meta http-equiv="content-type" content="text/html; charset=GB2312"> <!-- 導(dǎo)入js和CSS--> <link rel="stylesheet" href="jquery.treeview.css" /> <script src="lib/jquery.js" type="text/javascript"></script> <script src="lib/jquery.cookie.js" type="text/javascript"></script> <script src="jquery.treeview.js" type="text/javascript"></script> </head> <body> <ul id="tree" class="filetree"> <li><span class="folder">系統(tǒng)管理</span> <ul> <li><span class="folder">部門管理</span></li> <li><span class="folder">崗位管理</span> <ul> <li><span class="folder">崗位添加</span></li> <li><span class="folder">崗位刪除</span></li> </ul> </li> <li><span class="folder">用戶管理</span> <ul> <li><span class="folder">添加用戶</span></li> <li><span class="folder">修改用戶</span></li> </ul> </li> </ul> </li> <li><span class="folder">審批流轉(zhuǎn)</span></li> </ul> <script type="text/javascript"> $("#tree").treeview(); </script> </body> </html>
最后的樣式展示:
需求完成啦!
當(dāng)然樹狀結(jié)構(gòu)的樣式有多種多樣,也可以實(shí)現(xiàn)動(dòng)態(tài)的添加節(jié)點(diǎn)分支等等,大家可以在下載的插件里找demo文件下的例子看一下,很容易的。
第一次實(shí)現(xiàn)樹狀結(jié)構(gòu),一開始的心情有些恐懼,也是沒有頭緒,感覺要通過js寫下一個(gè)樹狀結(jié)構(gòu)也是有些難度的,雖說toggle方法也可以實(shí)現(xiàn)指定區(qū)域的收縮(隱藏)和展示,加上動(dòng)態(tài)變換文件夾等圖標(biāo)的樣式也是可以實(shí)現(xiàn)的,但是一想就覺得太麻煩了。所以在做OA的時(shí)候,老師提到了Jquery的treeview插件很好使,上網(wǎng)查詢它的官方資料竟然查到了一大堆插件,作為插件控的同學(xué)們一定很興奮吧,有一種劉姥姥進(jìn)大觀園的感覺。而且實(shí)現(xiàn)起來非常簡(jiǎn)單,從已知的知識(shí)入手,由簡(jiǎn)入繁,輕松掌握了所有Jquery插件的使用。這就是米老師說的所謂的吃飯理論吧:一個(gè)人被邀請(qǐng)去參加一個(gè)飯局,發(fā)現(xiàn)飯局中只認(rèn)識(shí)那個(gè)邀請(qǐng)自己的人,有些人會(huì)覺得飯局很無聊,很惆悵,或退場(chǎng),或自?shī)首詷?。但是聰明的人?huì)通過那個(gè)唯一自己認(rèn)識(shí)的人而認(rèn)識(shí)整個(gè)飯局的人,從而結(jié)識(shí)了一大幫朋友。我們學(xué)習(xí)也是一樣的,由我們已知的知識(shí)帶領(lǐng)我們走進(jìn)未知世界,戰(zhàn)勝恐懼和膽怯,相信沒有什么實(shí)現(xiàn)不了事情吧。
以上這篇由簡(jiǎn)入繁實(shí)現(xiàn)Jquery樹狀結(jié)構(gòu)的方法(推薦)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
jquery實(shí)現(xiàn)兩個(gè)div中的元素相互拖動(dòng)的方法分析
這篇文章主要介紹了jquery實(shí)現(xiàn)兩個(gè)div中的元素相互拖動(dòng)的方法,結(jié)合實(shí)例形式分析了jQuery基于鼠標(biāo)事件響應(yīng)的頁(yè)面元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2020-04-04jQuery-ui引入后Vs2008的無智能提示問題解決方法
引入jQuery-vsdoc文件后,jQuery庫(kù)就能智能提示了,解決方法很簡(jiǎn)單在jQuery-ui的目錄下再加入一個(gè)空的JS文件,命名jquery-ui-vsdoc.js2014-02-02jQuery學(xué)習(xí)筆記之jQuery選擇器的使用
jQuery中最核心和最讓人愛不釋手的就是選擇器,下面就是各種選擇器代筆的意義。2010-12-12jQuery實(shí)現(xiàn)的回車觸發(fā)按鈕事件功能示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)的回車觸發(fā)按鈕事件功能,涉及jQuery事件響應(yīng)及頁(yè)面元素屬性動(dòng)態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下2018-03-03jquery關(guān)于頁(yè)面焦點(diǎn)的定位(文本框獲取焦點(diǎn)時(shí)改變樣式 )
用戶在輸入文字時(shí),如果能高亮顯示正在輸入的那個(gè)文本框的話,會(huì)更人性化些,下面就使用jQuery來實(shí)現(xiàn)。2010-09-09jQuery實(shí)現(xiàn)帶滑動(dòng)條的菜單效果代碼
這篇文章主要介紹了jQuery實(shí)現(xiàn)帶滑動(dòng)條的菜單效果代碼,涉及jquery遍歷頁(yè)面元素及動(dòng)態(tài)變換效果實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-08-08jQuery插件FusionWidgets實(shí)現(xiàn)的AngularGauge圖效果示例【附demo源碼】
這篇文章主要介紹了jQuery插件FusionWidgets實(shí)現(xiàn)的AngularGauge圖效果,結(jié)合具體實(shí)例形式分析了jQuery使用FusionWidgets插件載入xml數(shù)據(jù)實(shí)現(xiàn)AngularGauge圖的相關(guān)操作技巧,并附帶demo源碼供讀者下載參考,需要的朋友可以參考下2017-03-03