一个超简单的小需求,用JS获得style的背景颜色,但是值一直为空,这个原因要记下来。(转)
js只能修改html内部的css样式代码。
在JavaScript中,通过document.getElementById(id).style.XXX可以获取到XXX的值,但意外的是这样做只能取到通过内嵌方式设置的样式值,即style属性里面设置的值。
原来是我把样式写到了head中。但是一般不把样式写成行内样式的,所以得找到解决的办法。随继续寻找之。功夫不负有心人,终于找到了解决方法:
如果是ie,问题很好解决,只要把style改成currentStyle即可。即:
function $(id){
return documentElementById(id);
}
var qL = $("qqChat").currentStyle.left;
alert(qL);//结果有值
而在firefox和chorm下,则采用另外一种方式:
function $(id){
return documentElementById(id);
}
var qL = document.defaultView.getComputedStyle($("qqChat"),null)
var qLL = qL.left;
alert(qLL);//结果有值
解决