jquery checkbox tree

有幾套不錯的,這種類的 plugin 有幾個點可以比較,樣式、選擇後影響子節點的方式、維護。

描述一下關於這個套件需要實作的點。

  • 點上層下層應該被全選,下層全取消上層也會被取消。有相依關係。
  • 如果下層被沒有被全選,上層應要有中間的狀態,一般在安裝軟體套件會用框框表示。

但這種模式並不能滿足所有的需求,我的需求是我選了一個點以後,不一定要連動下面的層級,或者是選了一個點以後也不要連動上面的層級。依照這種都不需要連動的概念,實作上就完全沒辦法輔助到使用者。所以我想要用第三種狀態來表示一個概念,來修改一套既能不連動又可以輔助的 plugin。

使用概念如下圖:

單點包含下層全選,雙點只有下層取消,三點包含下層全取消。

一套是 http://code.google.com/p/checkboxtree/ 關於事件與設定的功能頗完整,但是沒樣式,沒特別要求就用他吧,簡單且完整性高,參數丟法不太喜歡。

另外一套是 checktree  http://project.yctin.com/checktree/

這個版本是經由第三方修改一些 bug 的因為原版沒維護了,裡面有寫歷史專案的追溯,不喜歡可以自己找原版。這版本有支援半選取的狀態,且有樣式,但輔助函式過少。

有個小 bug ,只有一個元素然後很多層的時候會發生半選取算法錯誤,因為要下而上觸發而不是由上而下~

125 行
$(this).parents(“ul”).siblings(“:checkbox”).change();

改成
$($(this).parents(“ul”).siblings(“:checkbox”).get().reverse()).change();

這套樣式與功能超多,因此略閒肥大,不是我的菜…但是介面可以參考。

http://wwwendt.de/tech/dynatree/doc/samples.html

表徵

平常看見一個現象,都會先想這個現象是偶然還是常態,用此猜測來推斷造成這個現象的原因。

當遇見一個陌生人,我會不斷的測量與猜測人要如何與之相處,是否適合接近~要避免與壞人交深。因此初次見面時的每個動作每句話都會影響人的觀感。但有時交談互動時只是表面,無法推測出這人真正的個性。

生活上會遇見許多事,事情是現象還是原因,應該需要好好釐清,才能找到問題的根源對症下藥。

當看房子第一次遇到房東這是一位陌生人,要觀察一間房子適不適合居住,除了房子本身以外與房東的相處也格外重要,可以觀察他如何帶你去看房子。如果有房客還在居住他是用何種方式來進入房間?是直接開門、先行通知、當下按門鈴?都可以猜出這房東對待訪客謹慎與尊重的程度,這種原則的問題特別能看出人的本質。因此也可以用探測的方式問一些怎麼處理一些房子修繕,與公共空間設備的處理方式等問題。
但人種是會防備,全部看起來都很好,也不一定代表真的沒問題,或許只是一齣戲~因次需要特別注意各種小細節,並儘量將之作為考慮的條件,不要太相信看到的一切都是特例,下次會更好…

一棟房子從外表評斷新舊,只能看磁磚跟牆面的老舊程度,所以要讓一棟房子看起來像新的,只需要全部重新鋪過磁磚,但…只要有任何一個小細節漏出,一切的偽裝就會逐漸瓦解。

a song

有時不經意的聽完一張專輯,不太會有什麼特殊的感受…

(一點反應都沒有,只是一張CD)

只是在某刻在街上、咖啡廳,突然間耳朵亮了起來,一首熟悉的旋律與語調旋過耳後,

突然無法憶起,但卻很想知道…,可能這首歌曾經深深卻不著痕跡的已經進入了妳的心底…