DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> XML學習教程 >> XML詳解 >> 對XBL元素進行擴展
對XBL元素進行擴展
編輯:XML詳解     

在這一小節,我們將學習如果對已有的XBL定義進行擴展。

  繼承(Inheritance)

  有時你要建立的組件可能和現有的某個組件很相似,比如你想建立一個可以彈出菜單的按鈕,一種方法是重復造車輪,復制現有的button代碼,但有一種更好的方法,就是繼承現有的button代碼。

  所有的綁定項都可以被擴展,而且子綁定項可以額外添加屬性、方法和事件處理程序。子綁定項也同時具有在父綁定項中定義的所有功能(還包括父綁定項的父綁定項的所有功能,一直按照樹型模型追溯下去的所有功能)。

  要擴展一個現有的綁定項,首先要向binding標記中增加extends特性。比如下面這個例子,建立了一個文本框,而且當按下F4鍵的時候會向文本框的內容前添加“http://www”。

  實例11.7.1:源代碼

<binding id="textboxwithhttp"
     extends="Chrome://global/content/bindings/textbox.XML#textbox">
<handlers>
<handler event="keypress" keycode="VK_F4">
  this.value="http://www"+value;
</handler>
</handlers>
</binding>

  上面這個綁定項就是從textbox元素擴展出來的。extends特性中對應的URL指的是textbox元素對應的綁定項的實際地址。這就意味 著我們繼承了所有textbox綁定項提供的行為和內容。另外,我們又增加了一個keypress事件用於響應按F4鍵這個動作。

  自動完成輸入的文本框(Autocompleting TextBoxes)

  下面的例子類似於Mozilla自帶的地址自動輸入功能。從基本文本框的綁定項繼承下來的文本框都將支持自動完成輸入的功能。

  自動完成輸入的文本框額外增加了一個事件句柄,當在文本框輸入內容的時候,一個判斷後續內容的列表就會自動顯示出來。你可以在自己的應用程序中使用這項功能,只需要建立一個附加兩個額外特性的文本框即可。

<textbox type="autocomplete" searchSessions="history"/>

  將type特性設置為autocomplete,這樣就將自動完成輸入功能添加到文本框中。通過searchSessions設置在什麼地方查找數 據,在這個例子中,設置成history,代表從URL的歷史記錄中查找數據。(還可以設置為addrbook,代表從地址本中查找數據)

  在下一小結,我們將利用前面學到的知識完整構建一個XBL組件。

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved