首页 > 开发 > CSS > 正文

准确获取指定元素CSS属性值

2024-07-11 08:21:46
字体:
来源:转载
供稿:网友

  如何实现javascript精确获取元素css属性值?当处理 dom 元素的 css 属性时,我们经常会遇到一个问题:明明页面上已经定义了 css 属性值,但在获取的时候却为空,这是因为任何样式表文件或内联 css 预设的样式信息并不能可靠地反映到 style 属性上,本文向你介绍准确获取指定元素 css 属性值的方法。 

  javascript:

<script type="text/javascript">
function getstyle( elem, name )
{
    //如果该属性存在于style[]中,则它最近被设置过(且就是当前的)
    if (elem.style[name])
    {
        return elem.style[name];
    }
    //否则,尝试ie的方式
    else if (elem.currentstyle)
    {
        return elem.currentstyle[name];
    }
    //或者w3c的方法,如果存在的话
    else if (document.defaultview && document.defaultview.getcomputedstyle)
    {
        //它使用传统的"text-align"风格的规则书写方式,而不是"textalign"
        name = name.replace(/([a-z])/g,"-$1");
        name = name.tolowercase();
        //获取style对象并取得属性的值(如果存在的话)
        var s = document.defaultview.getcomputedstyle(elem,"");
        return s && s.getpropertyvalue(name);
    //否则,就是在使用其它的浏览器
    }
    else
    {
        return null;
    }
}
</script>

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表