我可以使用JS DOM访问外部定义的样式吗?

时间:2010-11-18 04:09:05

标签: javascript css dom stylesheet

如果我使用jQuery,我可以获得外部定义的样式,如:

$("#element").css("background-image")

如果我在没有jQuery的情况下尝试这样做,比如

document.getElementById("element").style.backgroundImage

我得到一个空字符串。有没有办法在没有jQuery的情况下获取这些信息?

1 个答案:

答案 0 :(得分:0)

是。痛苦的方式。

function getStyle(el,styleProp)
{
    var x = document.getElementById(el);
    if (x.currentStyle)
        var y = x.currentStyle[styleProp];
    else if (window.getComputedStyle)
        var y = document.defaultView.getComputedStyle(x,null).getPropertyValue(styleProp);
    return y;
}

从quirksmode偷来。这可能是jQuery静态方法的一个更简洁的版本。