欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 前端技术 > javascript >内容正文

javascript

JavaScript 学习笔记——cssText

发布时间:2025/6/17 javascript 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 JavaScript 学习笔记——cssText 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

平常编写代码,更改一个元素样式的时候,自己都是用

obj.style.width = "200px"; obj.style.position = "absolute"; obj.style.left = "100px";

 

之类的代码进行设置,这样的话如果更改样式很多的时候,就要写很多代码,难道不能像Jquery那样使用$(obj).css(……);这样进行设置么?

于是自己搜了下使用Javascript批量修改样式的方法。于是看到这篇文章,原来是有一个 cssText 属性的,看来自己的基础知识掌握的还并不充分呐

在w3school中查询了下用法

它是一组样式属性及其值的文本表示。这个文本格式化为一个 CSS 样式表,去掉了包围属性和值的元素选择器的花括号。

将这一属性设置为非法的值将会抛出一个代码为 SYNTAX_ERR 的 DOMException 异常。当 CSS2Properties 对象是只读的时候,试图设置这一属性将会抛出一个代码为 NO_MODIFICATION_ALLOWED_ERR 的DOMException 异常。

cssText 的使用    

obj.cssText = " width:200px;position:absolute;left:100px;";

正如那篇文章所提cssText会清除之前元素含有的样式,所以得使用

obj.cssText += " width:200px;position:absolute;left:100px;";

但是在IE中的最后一个分号会被删除

obj.cssText += " ;width:200px;position:absolute;left:100px;"; //这样便能解决在IE中出现的问题了

 可这样代码也显得有些麻烦(起码在我自己看来),于是又找了找其他方法

//使用JSON function setStyle(obj,json){for(var i in json) { obj.style[i]=json[i]; } }

使用的时候直接

setStyle(obj,{width : '200px'; position : 'absolute'; left : '100px';});

转载于:https://www.cnblogs.com/mirsent/p/5740247.html

总结

以上是生活随笔为你收集整理的JavaScript 学习笔记——cssText的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。