首页 > 编程 > JavaScript > 正文

通过js为元素添加多项样式,浏览器全兼容写法

2019-11-20 14:13:32
字体:
来源:转载
供稿:网友

js给元素添加多项样式,浏览器全兼容示例写法:

<a href="javascript:;" id="test" style="font-size:25px;background:#080;">测试3</a><script>var obj=document.getElementById("test");var oldStyle=obj.style.cssText;alert(oldStyle);obj.style.cssText="border:2px red solid;color:#f00;"+oldStyle;</script>

js给元素添加多项样式,最快捷方便的是使用cssText属性,但其会重写整个style原有的值,要保留原先的style样式值,很简单,可像上示例中一样,用一个变量记录下原先的style原始值,再做一个字符串的拼接即可。

但要注意的一点是:ie8及以下浏览器obj.style.cssText返回的最后一个样式值是没分号的,形如:font-size:25px;background:#080 。只想说,ie一如既往的让人感觉不爽,呵呵。

所以示例中有意将oldStyle放置在字符串拼接的后面,这样拼接的样式字符串就算最后一个样式值没分号,也不会出问题,各浏览器样式应用显示就一致了,这也算是一个小技巧吧,没啥技术含量,但易忽略或忘记,知道自己记性不好,Mark下 ^_^

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