幾乎每天在腳本技術領域都會出現新的技術並流行,腳本技術引進了新的規則,並可使人突發奇想而改變以往已有事物的名稱。一時間,一種你稱之為技術而其他人卻不了解,反之亦然,其他人稱之為技術而你卻知之甚少,甚至在兩種情況下,你們指的是同一件事情。
本文的目的只是試圖對大量的基於腳本的技術名稱和縮寫詞作一指點。去年,這些名稱已作了一些改變。同樣地,有些技術已由初始階段發展得更為成熟和完善,有的則略微有了些改變,但卻仍舊沿用原來的名稱(因此現在看來有點混亂)。但是當你讀完本文,所有事情都會清楚了。依序排列,請看下文:
Dynamic HTML (DHTML) DHTML Scriptlets XML XML Scriptlets IE 5.0 Behaviors HTML Components (HTC)
以上這些名稱的範圍較大,但都是可從Microsoft取得的典型的腳本類別技術的名稱。
動態HTML(Dynamic HTML)
因為動態HTML(Dynamic HTML)首次出現在Internet Explorer 4.0,所以它是所有Microsoft腳本技術的鼻祖。動態HTML(Dynamic HTML)也可歸為「A」(代表Active),也就是現在使用的大量引擎、程式設計工具和技術。
每個web頁面都是標記、段落、表單、Windows中的表單元素、幀和表格等的有機組合,想到了這一點,就會對文檔物件模型(Document Object Model)有個粗略的認識。 World Wide Web 代理程式(W3C)對此所做的標準的說明詳細闡述了web頁面中內容的層次及存取的路徑。
DHTML是一個名稱,它通常用於識別一種方式,即IE4,IE5 and Navigator4改變某種模式並用它來確定當前Web頁面的模式。關鍵是這些模式利用頁面本身的程式碼支援動態的和腳本驅動的web頁面的變化。這就為那些編寫動態的和互動式應用程式的Web開發者開闢了一條新路。
編按:當W3C發布DOM規則時,它希望兩個主要瀏覽器(IE和Nav)的第五個版本都能按照這個規則執行他們的DHTML。這樣,儘管Nav5適合DOM而IE5不適合,web管理員也更容易創建兩種瀏覽器都相容的Web頁面,而不是像目前這樣在IE4/Nav4瀏覽器中要用不同的方式執行DHTML。
動態HTML腳本元件(DHTML Scriptlets)
DHTML支援在一個web頁面中組織各種不同類型的內容以達到許多特殊效果,利用這些程式碼,也可以在多個頁面中重複使用這些內容和功能。在這個過程中,通常使用的是“剪下”和“貼上”,但有時卻不需做太多重複工作。
例如,貼上SPANs & IMGs或TABLEs & anchors以創建一個全新的對象,該對像有預設功能和用戶化的參數,或許一個TABLE和the Remote Data Service ActiveX控制元能夠使該對像以多種方式顯示各項記錄。它不是一個新的標記,也不是一個新的二進位ActiveX控件,而是一個基於HTML的可視元件:一個DHTML Scriptlet。
一個DHTML Scriptlet是一個HTML頁面置入另一個HTML主頁,該主頁有一個主體和一組腳本程式碼可獨立運作,它還可以展示一些效能、方法和內容。一個DHTML Scriptlet透過OBJECT標記置入並由一個簡單的HTML檔案提供。如果有使用者介面,這種物件就能顯示某些特殊功能。但它也可以成為一個簡單的、不起眼的商業化物件。
最初被簡單地稱作腳本的組件如今已喪失了許多原有的價值且已不再受人青睞,但要創建組合HTML控制權,只有用它才可能完成。如果需要一個特殊的可視的HTML元件,該元件是多種標記的組合,那麼除了二進位ActiveX控制項外,DHTML Scriptlets是唯一的選擇。如果不考慮使用者介面,或只想要提高單一元素的效能,那麼就應該利用其它基於腳本的工具了。
XML
XML是eXtensible Markup Language的縮寫,它可為Web應用程式提供一個新的開發範圍。 XML正成為一種廣泛地應用於在Web間交換資料的程式語言。值得推崇的是,它的結構與HTML相似但更嚴謹。 XML的重要性在於它是專用於建立新的腳本類別的程式語言,這種腳本是由腳本程式碼組成的真的COM物件。
XML Scriptlets
如今,XML Scriptlets是一個令人困惑的問題,而它們的初始名稱Server Scriptlets則更另人費解。從Server到XML有一個很大的飛躍,但原來的名稱更容易理解:
1、他們象伺服器一樣運作。
2.他們大多作為DHMTL腳本的伺服器輔助版在伺服器上執行指令。
XML Scriptlets是包含資料和元資料的XML文檔,它可識別和定義一個COM物件。 XML標誌包含一個CLSID,一個自動調控的介面和腳本程式碼。但是,與一個COM物件不同,XML Scriptlets 不是二進位函式庫,那麼有什麼竅門呢?
事實上,他們取決於DLL,DLL能夠區分XML文件中的腳本程式碼和所謂的COM-aware應用程式並劃分其界限。應用程式可確認規則控制項的CLSID,與DLL配合,然後,將腳本程式碼置入XML運行。
雖然DHTML和XML的名稱同出一轍,但他們的共同點卻微乎其微,web管理員可依不同需求進行取捨。如先前所示,DHTML Scriptlets作為使用者介面的基於HTML的元件和基於腳本的元件運作。基於HTML元件用於製作WEB頁面,從Web頁面到Windows腳本主頁過程中,無論何時腳本程式碼被接受,基於腳本的元件都發揮作用。另一方面,XML Scriptlets是使用者的縮小介面,當它在ASP頁面中重新使用某些腳本程式碼時,它可作為輔助伺服器備用。
IE5.0 Behaviors
腳本發展的下一步是如何在IE5.0 Behaviors中運作。 IE4.0或更高版本支援DHTML和XML Scriptlets。同時,Behaviors是IE5.0的一種特殊形式。一個IE5.0 Behaviors就是給一個已有的HTML標記或一組標誌一個特殊功能的XML Scriptlet。例如,從一個頁面連結到另一個頁面,可增加一種功能使背景逐漸減弱,以實現漸變。編寫實作此功能的程序,簡要說明程式碼執行時將出現的情況及其執行結果。
在某種程度上,將一個behavior應用於一個標記類似於將Window進一步劃分為Win32。應用一個behavior只需給標記分配一個CSS類別的名稱,此名稱的Behavior屬性是XML Scriptlet的URL。 Behaviors的目的是為了取代DHTML Scriptlets,但它無法建立新的組合HTML控制項。它們適用於單一標記,而非多個或互動的標記。 (他們很有可能源自於Microsoft 的XML Chromeffects項目,該項目沒有成功)。
HTML元件
從技術角度講,HTML元件(HTC)是XML文檔,該文檔和XML Scriptlets相比與原始設計略有不同。但他們包括同樣的內容且瀏覽功能相同。與XML Scriptlets相比,HTCs程式碼更為簡單、直覺。此外,設計HTCs和XML Scriptlets是專門用來編寫IE5.0 behaviors的。在解決使腳本程式碼可重複使用並成為模板的問題上,XML Scriptlets更為常用。
總結
在過去的一年半里,我們觀察到追蹤了一些有關Web腳本的有趣的方案。從DHTML Scriptlets發展到IE 5.0 behaviors以及其相關技術,同時,XML Scriptlets在其它領域如Windows Scripting Host 也得以應用。 XML日受青睞,HTML顯得有點過時。但有一點是始終不變的,那就是所有技術的都要應用的「腳本程式碼」!