標籤雲

搜尋此網誌

2009/11/10

在 css 中執行 js 陳述式 (IE only)

今天在逛同事 Bruce 的部落格, 看到了一個在 CSS 裡執行 js 的方式
原來還有這一招阿! 趕快給它學起來...

<style>
a{
noframe:expression(this.onFocus=this.blur());
/*noframe為自訂屬性名,可替換為任意名稱*/
}
img.altImg1{
text:expression(src="myImage.jpg");
width:expression(300 +"px");
}
</style>

...(略)

<img id="altImg" class="altImg1">
<a href="#">這個連結點下去時不會有虛線框</a>

如上,透過在 css 裡面執行 expression() 方法,就可以替該 DOM 元素的屬性給值
但可別高興得太早阿
經過我驗證之後,發現這個功能是 IE 擴充的,而非 W3C 標準
也就是說它在其他瀏覽器上沒有作用!!
哇哩咧...這不是白玩了嗎??
不過也許可以利用這一點來做一些 IE hack
例如 IE 不支援的 fixed定位,或是 max-width 與 max-height
下次有機會再來 try try 看吧

沒有留言: