一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

打造基于jQuery的高性能TreeView

  項目中經常會遇到樹形數據的展現,包括導航,選擇等功能,所以樹控件在大多項目中都是必須的。那一個實用的樹應該具備什么功能呢?

  根據我的項目實踐情況,主要是幾個關鍵點:

  1:支持靜態的樹,即一次性將全部數據加載到客戶端。

  2:異步樹,即一次只加載一級或若干級節點,子節點可以異步加載數據。

  3:Checkbox樹(可能是靜態樹也可能是異步樹),用于選擇(如選擇組織機構,選擇數據字典項)等,最好是能夠支持節點級聯(這個是難點)

  4:能夠承載大數據量,并性能表現優異

  5:能夠在主流瀏覽器中運行良好

  那我要打造的TreeView就是為了實現這個5個主要指標的。

  先來看下效果圖

image

  上圖是中國行政區域的數據樹,總共得節點是3500+。

  那么我們要開工了;

  1:第一個確定的節點Dom結構(即用什么樣的HTML來構建節點)  

  • 比較土的是table套table的(樣式上好控制,但是大數據量,和層次較深的樹,這種結構肯定頂不住的)
  • 還有一種是比較新鮮的UL套LI的方式,這是現下很多書采取的方式如Jquery.treeview就是采用的這種格式,好處比較明顯就是結構簡潔明了,
    而且在不支持Js的瀏覽器上,同樣也能呈現出樹的形狀(這種情況其實咱可以忽略),但是Jquery.treeview的節點在IE下,特別是IE6下無法被內部元素撐開,(IE7,8當達到一定深度時無法撐開),請奇怪的現象(我猜測是因為使用padding來做縮進,margin-left:負值來控制圖標位置有關,但是修改起來難度也較大),在這種情況下書會變形(Jquery.treeview)就有這種問題,只能通過設置節點的width來解決。

image

  JQuery.treeview的節點結構

image

  Jquery.TreeView  IE6 下 展開第三級即出現錯位

image IE8下展開到第5級

  • 還有一些是div套table的方式,CSDN的導航樹就是這種,是種折中的方法(節點也不算太復雜,而且CSS也比較好寫),如下圖所示
    image

 

  而我采用的也是第二種方式,但是縮進采用了填空的方式,即縮進的位置用空白的圖片填充來避免Jquery.treeview的問題

image

  我的樹節點結構

  確定了節點的HTML我們就可以來寫CSS了。有了效果圖,有個節點結構接著就編寫CSS了

  下面是CSS的完整代碼

Code

it知識庫打造基于jQuery的高性能TreeView,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 欧美成人三级大全 | 亚洲系列中文字幕一区二区 | 国产综合成人观看在线 | 国产手机在线精品 | 久久精品视频8 | 91精品在线视频观看 | 久久久夜色精品国产噜噜 | 国产精品久久久久久一区二区三区 | 91原创视频在线 | 日韩中文字幕在线免费观看 | 精品欧美一区二区精品久久 | 中文字幕福利 | 久久精品国产清自在天天线 | 6080yy午夜不卡一二三区久久 | 日本人×体xx艺术 | 国产在线色视频 | 色偷偷影院| 精品91麻豆免费免费国产在线 | 大香网伊人久久综合网2020 | 热99在线视频 | 欧美在线一二三区 | 日本妇人成熟免费不卡片 | 婷婷涩涩 | 精品91 | 免费看黄色录像片 | 亚洲综合色一区二区三区另类 | 五月天综合久久 | 精品一区二区三区在线观看 | 性视频久久 | 欧美人禽杂交狂配在线观看视频 | 怡红院一区二区在线观看 | 欧美精品第二页 | 国产精品久久自在自2021 | 亚洲综合色在线 | 亚洲欧美另类国产综合 | 色伊人国产高清在线 | 2021国产视频 | 欧美性色xo影院永久禁欲 | 色狠狠综合网 | 91成人影院未满十八勿入 | 日产一一到六区麻豆 |