如题,相信这个函数百度一搜一大推,但令人匪夷所思的是这些函数都写的“奇形怪状的”,例如http://www.cnblogs.com/windows7/archive/2010/03/30/1700648.html,考虑的倒是挺周全:id可以直接引用、cssFloat/styleFloat、属性大小写改为“-”,但这还是js吗?

我来个简单点的,在这保存备份一下:

    var cssStyle = function (elem,name,value){
if (elem.currentStyle){
if (arguments.length === 2){
return elem.currentStyle[name];
}else if(arguments.length === 3){
elem.style[name] = value;
}
}else{
if (arguments.length === 2){
return document.defaultView.getComputedStyle(elem,null)[name];
}else if(arguments.length === 3){
elem.style[name] = value;
}
}
} //test
var foo = document.getElementById("foo");
cssStyle(foo,"display","block");

js获取和设置DOM样式函数cssStyle(类似于jquery的$(elem).css())的更多相关文章

  1. js进阶 11-6 jquery如何获取和设置元素的宽高(jquery多方法)

    js进阶 11-6  jquery如何获取和设置元素的宽高(jquery多方法) 一.总结 一句话总结:jquery里面多是方法啊,比如jquery对象的宽高.所以取值是方法,赋值就是方法里面带参数. ...

  2. js 获取和设置css3 属性值的实现方法

    众多周知 CSS3 增加了很多属性,在读写的时候就没有原先那么方便了. 如:<div style="left:100px"></div> 只考虑行间样式的话 ...

  3. 原生js获取元素非行内样式属性的方法

    获取当前对象的样式DOM标准中的全局方法 getComputedStyle(obj).width (获取元素的宽度),但在非标准IE浏览器(IE8)以下有兼容问题IE8以下要这样写 obj.curre ...

  4. js获取和设置属性的方法

    function square(num){    var total = num*num;//局部变量    return total;}var total = 50;//全局变量var number ...

  5. JS获取元素属性、样式getComputedStyle()和currentStyle方法兼容性问题

    1. getComputedStyle()  方法获取到的是经过计算机/浏览器计算后的样式 getComputedStyle($("#div")).width; 兼容性:IE6 7 ...

  6. JS获取渲染后的样式

    一般我们利用element.style.属性来获取CSS的样式,而此方法只能获取标签内的样式,无法获取头部或引入的样式,因此,而我们又需要获取其样式,则我们可以使用:(其中element为标签,pro ...

  7. react.js 获取真实的DOM节点

    为了获取真实的dom节点,文本输入框必须有一个 ref 属性,然后 this.refs.[refName] 就会返回这个真实的 DOM 节点. var MyComponent = React.crea ...

  8. jQuery学习- 获取与设置属性的函数

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. js获取宽度设置thickbox百分比

    thickbox的宽高不好设为百分比,这样遇到不同的尺寸的电脑就会出现问题. 怎么做呢? 通过js来处理. <script type="text/javascript"> ...

随机推荐

  1. [Java] 读写字节数据,过滤流DataOutputStream和DataInputStream

    package test.stream; import java.io.DataInputStream; import java.io.DataOutputStream; import java.io ...

  2. [Flex] ButtonBar系列——flex3 ButtonBar各项之间的间距调整

    <?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="h ...

  3. Microsoft Visual C++ 2015 Redistributable(x64) - 14.0.2306 设置失败

    想要在Windows 2008 R2 中 安装PHP, 需要安装 Microsoft Visual C++ 2015 Redistributable(x64) ,结果提供设置失败. 先中找到以下文字, ...

  4. Matla学习:figure+axes+plot

    function fig = SetDrawParam() %.获得屏幕尺寸 figpos = , 'ScreenSize');%获得屏幕尺寸,单位像素 %.设置坐标系在画布中的位置,针对不同尺寸或不 ...

  5. HYSBZ 1061 志愿者招募 【最小费用流】【差分】【最小费用流模板】

    #include<stdio.h> #include<queue> #define MAXN 1003 #define MAXM 10002*4 #define INF 100 ...

  6. var obj = {};var obj2 = [];var obj3;

    <script> var obj = {}; console.log(obj); var obj2 = []; console.log(obj2); var obj3; console.l ...

  7. Oracle 11g新参数USE_LARGE_PAGES与AMM使用 (转载)

    在之前的文章(http://space.itpub.net/17203031/viewspace-774843)中,笔者介绍了如何在Linux 2.6内核中配置HugePage以及AMM与其的不兼容性 ...

  8. UITextField详解

    UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, 30)];  //初始化textfield并 ...

  9. java.io.Serializable浅析

    转自:http://www.cnblogs.com/gw811/archive/2012/10/10/2718331.html Java API中java.io.Serializable接口源码: p ...

  10. Orchard官方文档翻译(二) 安装 Orchard

    原文地址:http://docs.orchardproject.net/Documentation/Installing-Orchard 想要查看文档目录请用力点击这里 最近想要学习了解orchard ...