htcファイルでプロパティを定義する(2)
htcファイルではonmouseoverとonmouseoutの動作とhiliteColorという
プロパティを定義している。
そして、このhtcファイルを<A>タグにATTACHしている。
3つのリンク(つまり<A>)のうち、1つ目ではHILITECOLOR="lime"、
2つ目ではHILITECOLOR="cyan"と指定してある。このため、
マウスがのったときHILITECOLOR属性で指定した色になる。
3番目ではHILITECOLOR属性は指定していない。
このため、htcファイルのスクリプトで
デフォルトにしてあるredに変化する。
けっこうややこしいぞ、コレ。
Yahoo JAPAN
Goo
Lycos
本ファイル
<STYLE TYPE="text/css">
A {behavior:url(dhtml_ie_neo0034s.htc)}
</STYLE>
:
:
<A HREF="http://www.yahoo.co.jp" HILITECOLOR="lime">Yahoo JAPAN</A><BR>
<A HREF="http://www.goo.ne.jp" HILITECOLOR="cyan">Goo</A><BR>
<A HREF="http://www.lycos.ne.jp"">Lycos</A><BR>
dhtml_ie_neo0034s.htc
<PUBLIC:COMPONENT>
<PUBLIC:PROPERTY NAME="hiliteColor" />
<PUBLIC:ATTACH EVENT="onmouseover" ONEVENT="Hilite()" />
<PUBLIC:ATTACH EVENT="onmouseout" ONEVENT="Restore()" />
<PUBLIC:ATTACH EVENT="onload" FOR="window" ONEVENT="Init()" />
<SCRIPT LANGUAGE="JavaScript">
var defaultColor
function Init() {
if(hiliteColor == null) {
hiliteColor = "red"
}
}
function Hilite() {
defaultColor = element.style.color
element.style.color = hiliteColor
}
function Restore() {
element.style.color = defaultColor
}
</SCRIPT>
</PUBLIC:COMPONENT>