Behaviour.js 真正的清潔了html?

          Posted on 2005-11-24 23:10 BlueO2 閱讀(961) 評論(1)  編輯  收藏 所屬分類: AJAX

          http://bennolan.com/behaviour/   為了避免在html中引入過多的script tag,尤其現(xiàn)在富客戶端應(yīng)用很火的時候,script寫的就越發(fā)的多。
          官方網(wǎng)站舉了一個這樣子的例子

          <div id="image_16209134_normal">
          <script language="Javascript">
          photo_hash['
          16209134'] = new Object();
          photo_hash['
          16209134'].title =
           '2am on Saturday';
          </script>
          <h4 id="title_div16209134" 
              style
          ="margin-bottom: 0px; margin-top: 0px;">

              2am on Saturday
          </h4>
          <script type="text/javascript">initPhotosUserPageTitle_div('16209134');</script>

          這是Flickr上面一段代碼。確實,它使得代碼閱讀起來結(jié)構(gòu)不清晰了。Behavior應(yīng)用之后,不需在元素上寫明觸發(fā)事件要執(zhí)行的方法,比如
          <a onclick="this.parentNode.removeChild(this)" href="#">
          Click me to delete me
          </a>
          而變成了
          <ul id="example">
          <li>
          <a href="/someurl">Click me to delete me</a>
          </li>
          </ul>
          那么javascript如果找到這個a鏈接并加上onclick事件方法的呢?采用css selector

          var myrules = {  
          '#example li' : function(el){  
          el.onclick = function(){   
          this.parentNode.removeChild(this);  
          } }};
          Behaviour.register(myrules); 確實看起來,html清爽了,但是,卻引入了其他的元素。ok,我們可以為每個控件定義id,其實也未嘗不可,asp.net不也是web component開發(fā)的時候都定義id的么?可似乎又脫褲子放屁之嫌。在維護(hù)一個對某一組應(yīng)用相同樣式或響應(yīng)
          相同方法的html控件上應(yīng)用behavior,有意義,起碼不必每個上面都寫上onclick之類的,但是對于更普遍的應(yīng)用,每個html控件要做得事情是不同的啊。那個時候,不但用behavior代碼量增加了,而且維護(hù)一個var myrules里的內(nèi)容和去刪除控件上的onclick其實工作量差不多。真正的應(yīng)用可不是demo啊,列出來一排link寫著remove me,然后執(zhí)行一樣的動作。
          不過正如我上面說的,還是有一定的應(yīng)用場景的,大家可以在有此需求的時候考慮,還有一Behaviour.js





          Feedback

          # re: Behaviour.js 真正的清潔了html?  回復(fù)  更多評論   

          2006-01-18 01:00 by 拐拐龍底咚
          今天發(fā)現(xiàn)了它的一個變種(?)degrader.js
          http://blog.chunzi.org/archives/2005/11/oe_behaviourjs.html

          posts - 29, comments - 3, trackbacks - 0, articles - 0

          Copyright © BlueO2

          主站蜘蛛池模板: 绥江县| 彭水| 长宁县| 东城区| 邹城市| 汾阳市| 乐清市| 德州市| 天台县| 肇源县| 垣曲县| 石屏县| 潜山县| 瓮安县| 邵武市| 普兰县| 巨鹿县| 青田县| 紫云| 汶上县| 宣汉县| 泾源县| 遂昌县| 南阳市| 临夏市| 桑日县| 靖边县| 博乐市| 津南区| 临漳县| 天峻县| 奎屯市| 南江县| 陆良县| 随州市| 逊克县| 禄丰县| 如皋市| 红桥区| 民县| 太谷县|