我寫一個函數要設置或獲取樣式屬性值:如何創建一個函數來設置或獲取樣式屬性值?
function $(ID){return document.getElementById(ID);}
Object.prototype.css=function(style,value){
if(value==undefined){
return eval("this.style."+style);
}
else{
if(isNaN(value)){
return eval("this.style."+style+"=\""+value+"\"");
}
else{
return eval("this.style."+style+"="+value);
}
}
}
function ad(){
$("ad_ol").css("top","-170px");
}
它可以在Firefox,Chrome和IE9很好地工作,但在IE7和IE8無法正常工作,錯誤消息是:對象不支持「css」屬性或方法
誰能幫幫我?是「這個」問題?是否有更好的功能可以做到這一點?
因爲元素不是實際對象在IE <9無論如何,你的代碼是完全氣餒項目('eval','Object.prototype')。我建議通過最新的最佳實踐來獲取最新信息。 – pimvdb 2012-02-25 13:24:53
「充滿令人沮喪的方面」+1不要使用'eval()',我不會[爲每個'object'附加一個'.css()'方法](http://jsfiddle.net/c5yr3/ )。 – 2012-02-25 13:27:36
或者可以說更糟:http://jsfiddle.net/c5yr3/1/。 – pimvdb 2012-02-25 13:32:13