用CSS的expression判斷表達式設定input樣式,簡單,輕量級。缺點在於expression判斷表達式FireFox是不支援的。致命的是只能區分出一個(例如例子中就只能區分出text文字框),不要試圖設定多個,下面的會將上面的覆蓋掉 ……Orz…
代碼:
Example Source Code
[www.downcodes.com]另一種方法:
Example Source Code
[www.downcodes.com] input{
zoom: expression(function(ele){(ele.className)?ele.className+=" "+ele.type:ele.className=ele.type; ele.style.zoom = "1";}(this));
}
1.將 input 的屬性取出來,賦給 className。
2.對於 expression,這裡使用一個無關緊要的屬性(此處是zoom)來觸發,處理完需要做的事情之後,再將此屬性覆蓋掉以解決 expression 不斷執行的效率問題。
代碼: