为什么要this.style[property]得到一个空字符串?我的代码是:<!DOCTYPE html><html><head> <title>Demo</title> <style type="text/css"> #test{ height:100px; } .tclass{ width:100px; } </style> <script type="text/javascript"> function $(ID){ var element=document.getElementById(ID||'nodId'); if(element){ element.css=css; } return element; } function css(prop,value){ if(value==null){ return this.style[prop]; } if(prop){ this.style[prop]=value; } return true; } window.onload=function(){ var element=$("test"); alert(element.css("height")+","+element.css("width")+","+element.css("background")); //alert ,,#ccc }; </script></head><body> <div id="test" style="background:#CCC;" class="tclass">Test</div></body></html>此代码警报,,#ccc,但我想得到100px,100px,#ccc,我怎么了?谁能帮我?更新我更改了CSS函数,现在可以正常使用了: function css(prop,value){ if(value==null){ var b = (window.navigator.userAgent).toLowerCase(); var s; if(/msie|opera/.test(b)){ s = this.currentStyle }else if(/gecko/.test(b)){ s = document.defaultView.getComputedStyle(this,null); } if(s[prop]!=undefined){ return s[prop]; } return this.style[prop]; } if(prop){ this.style[prop]=value; } return true; }
添加回答
举报
0/150
提交
取消