立即注册 登录
召隆企博汇论坛 返回首页

至臻的个人空间 http://bbs.clogcn.com/?6 [收藏] [复制] [分享] [RSS]

日志

JS访问和设置CSS属性

已有 534 次阅读2019-12-29 19:32 | html5

js访问CSS属性
1.点语法

box.style.width
box.style.height
box.style.top
得到带有单位的属性值,比如200px;但是,点语法有一个很致命的问题,跟在style后面的属性不能由外部传入。
比如:

var h = 'height';
box.style.h = 300 + 'px';
无法设置box的高度
2.下标语法:这种语法的好处是可以动态传递参数作为属性
比如:
var h = 'height';
box.style[h] = 300 + 'px';
进行设置box的高度

JS获取CSS的样式
问题
在开发中,我们想要获得CSS样式,通常采用:box.style.top、box.style.backgroundColor等,但是这种方式只能获得行内样式,无法获得业内样式或者外部样式表中的定义的属性,如何解决?
解决
在IE和Opera浏览器中,使用:
obj.currentStyle

在W3C标准浏览器中,使用:
window.getComputeStyle("元素","伪类")
注意:两个选项是必须的,没有伪类用null代替

兼容写法
getStyleAttr: function (obj, attr) {
   if (obj.currentStyle) { // IE 和 opera
        return obj.currentStyle[attr];
    } else {
        return window.getComputedStyle(obj, null)[attr];
    }
},

路过

雷人

握手

鲜花

鸡蛋

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

QQ|Archiver|手机版|小黑屋|召隆企博汇 ( 粤ICP备14061395号 )

GMT+8, 2025-11-14 10:33 , Processed in 0.025406 second(s), 18 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部