Posted on 2006-01-08 23:21
canonical 閱讀(613)
評論(0) 編輯 收藏 所屬分類:
軟件開發
在無侵入性的前臺頁面控件設計方案中, 我們需要一種簡便的方法迅速定位頁面中的某一節點(dom
node). 使用xpath是非常誘人的一個技術選擇, 但是在實際使用中, 我們卻發現xpath并不是那么方便. xpath的能力非常強大,
它支持絕對定位, 例如//input[@id='3'], 也支持相對定位, 例如 ./input[0], 甚至支持根據節點內容定位,
例如//a[contains(., 'partial text')].
問題是在一個復雜的界面控件中, html節點本身的結構與界面展現結構并不是一致的,例如一個特定效果的邊框可能需要多個html元素互相嵌套才能夠實現, 因此xpath的相對路徑選擇能力往往派不上用場(除非是提供
http://www.backbase.com/那
樣的界面抽象層), 而根據內容定位的方式過于靈活, 難以維護一個穩定的概念層. 相比較而言,
css的選擇符所提供的節點定位方式要比xpath更加簡單直觀, 它的適用性也早已在大量的實踐中得到了證實.
基于css選擇符實現behaviour機制是一種更加可行的方案. 參見
http://prototype.conio.net/