在微軟IE5.0版本的瀏覽器發布以前,網頁編程中面對的最大挑戰就是不能輕易地創建組件,以達到代碼重用和多頁面共享的目的。這個問題一直困擾著DHTML(動態HEML)的網頁編程者。他們只能不斷地重複書寫HTML、CSS和javascript的代碼,以滿足多個頁面上的重複或相似的功能。自IE5.0瀏覽器發布後,這種情況得到了改善,它帶給我們一個新的指令組合方法,可把實現特定功能的代碼封裝在一個組件內,從而實現多頁面的代碼重用,使網頁編程進入一個全新的天地。這個新的技術就是我們要談到的DHTML中的“行為”(Behaviors)。
下面是我做的一個小例子:
font_effect.htc
代碼如下:
////////////////////////“行為”文檔開始////////////////////////////
//給“行為”增加四個鼠標事件
<PUBLIC:ATTACHEVENT="onmouseover"ONEVENT="glowit()"/>
<PUBLIC:ATTACHEVENT="onmouseout"ONEVENT="noglow()"/>
<PUBLIC:ATTACHEVENT="onmousedown"ONEVENT="font2yellow()"/>
<PUBLIC:ATTACHEVENT="onmouseup"ONEVENT="font2blue()"/>
//給“行為”定義二個方法,注意NAME的值裡不能加括號
<PUBLIC:METHODNAME="move_down"/>
<PUBLIC:METHODNAME="move_right"/>
<scriptlanguage="JScript">
//定義一個保存字體顏色的變量
varfont_color;
//定義向下移動文字的方法
functionmove_down()
{
element.style.posTop+=10;
}
//定義向右移動文字的方法
functionmove_right()
{
element.style.posLeft+=10;
}
//定義鼠標onmouseup事件的調用函數
functionfont2blue()
{
if(event.srcElement==element)
{
element.style.color="blue";
}
}
//定義鼠標onmousedown事件的調用函數
functionfont2yellow()
{
if(event.srcElement==element)
{
element.style.color="yellow";
}
}
//定義鼠標onmouseover事件的調用函數
functionglowit()
{
if(event.srcElement==element)