JavaScript 学习笔记——cssText

JavaScript 学习笔记——cssText平常编写代码,更改一个元素样式的时候,自己都是用obj.style.width=”200px”;obj.style.position=”absolute”;obj.style.left=”100px”;之类的代码进行设置,这样的话如果更改样式很多的时候,就要写很多代码,难道不能像Jquery那样使用$(obj).css(……);这样进行设置么?于是自己搜了下使用Javascript批

大家好,又见面了,我是你们的朋友全栈君。

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

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';});

自我感觉这样方法倒是挺不错

非原创,只是怕自己看到的东西忘记了,存在这里,随时查看 :),笔记嘛,哈哈

原文:http://rguanghui.sinaapp.com/2013/02/26/javascript_study_note_csstext/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/159230.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • LAMP学习路线图

    LAMP学习路线图

    2022年2月6日
    44
  • sftp指定端口登录命令_sftp端口号怎么查

    sftp指定端口登录命令_sftp端口号怎么查  sftp-oPort=5022root@10.159.0.21  使用-o选项来指定端口号。  -oPort=远程端口号-oPort=5022不能放后面

    2025年11月15日
    2
  • pycharm配置python解释器_idea支持python吗

    pycharm配置python解释器_idea支持python吗pycharm配置IdeaVim不知道为啥,找了一圈都没找到配置教程,,,还有的博文直接就讲不能配置???迷惑行为。配置教程原文:https://www.jetbrains.com/help/pycharm/using-product-as-the-vim-editor.html这个是官方文档。本文也是就做到翻译一下吧,我对vim配置也不太懂。第一步安装IdeaVim然后重启pycharm这个时候打开idealvim,在Tools>VimEmulato这个时候打开ideal

    2022年10月1日
    3
  • 一致性Hash算法以及java实现「建议收藏」

    一致性Hash算法以及java实现「建议收藏」目前我们很多时候都是在做分布式系统,但是我们需把客户端的请求均匀的分布到N个服务器中,一般我们可以考虑通过Object的HashCodeHash%N,通过取余,将客户端的请求分布到不同的的服务端。但是在分布式集群中我们通常需要添加或删除服务器,所以通过取余是不行的。一致性Hash就是为了解决这个问题。  ConsistentHashing一致性Hash的原理  1、环型Hash空间…

    2022年10月5日
    3
  • vector不是模板_vector的实现

    vector不是模板_vector的实现1.vector容器vetcor顾名思义就是一个向量的容器,该容器中的每个元素都属于同一个类型,有点类似于数组,vetor容器与数组的不同之处就在于,它具有“动态”的属性,举例来说,如果定义了一个vector容量为10,当你添加第十一个元素时,他会自己找一篇新的足够大领土(内存),然后搬家(把旧址复制过去)。而数组同志显然就是比较死板,在定义时有多大,实际也就有多大。vector容器的常规操作有…

    2022年8月18日
    8
  • 解决:java.lang.UnsupportedClassVersionError「建议收藏」

    解决:java.lang.UnsupportedClassVersionError「建议收藏」问题: java.lang.UnsupportedClassVersionError: xxxxx Unsupported major.minor version 52.0启动Tomcat时出现这种错误。造成这种错误的原因是你的Tomcat运行的JDK版本与支持application运行的JDK版本不一致导致的。解决方法: 1、Window—&gt…

    2022年6月13日
    40

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号