发个js从样式表取值的函数
作者:cly84920 来源:经典论坛 时间:2008-05-20 12:23:00
因为写js经常需要用到访问样式,我们常用的做法是通过 DOM.style.XXX来读写样式信息的。可是DOM.style这种写法只能访问<DOM style=""></DOM>,这样在标签里内置的样式,如果样式写在<style type="text/css"></style>,或者.css文件里,那么就办法读到样式了。
其实呢,还有别的方法可以读到这些样式信息,方法有两种,一种是通过document.styleSheets对象,另一种是通过“最终样式”对象。其中IE中这个对象叫做currentStyle,FF中这个对象叫做document.defaultView。我将这两个类打包了一下,做了一个用于访问样式信息的函数,如下:
//===========================访问样式表函数====================================
function returnStyle(obj,styleName){
var myObj = typeof obj == "string" ? document.getElementById(obj) : obj;
if(document.all){
return eval("myObj.currentStyle." + styleName);
} else {
return eval("document.defaultView.getComputedStyle(myObj,null)." + styleName);
}
}
函数有两个参数:
obj: 访问的对象,类型为DOM对象,或者是对象的id;
styleName: 需要访问的样式名称。类型为string,但是名称不能用"-"号,要用像style.对象的属性名一样的大小写混写名称,例如background-color要写成backgroundColor。
函数返回值为 string类型。
注意:这个方法只能访问样式文件,不能写。如果要写样式,还是要用DOM.style.XXX的方法。另外,FF下有些样式访问有问题,例如padding,margin。如果样式中设置了padding,margin等值,我们可以用marginLeft来返回值。
[提示:你可先修改部分代码,再按运行]
标签:函数,样式,js,css
0
投稿
猜你喜欢
PHP date()格式MySQL中插入datetime方法
2024-05-13 09:51:39
Python爬虫爬取商品失败处理方法
2021-04-11 11:26:31
mac安装mysql初始密码忘记怎么办
2024-01-16 20:42:45
详解golang避免循环import问题(“import cycle not allowed”)
2024-05-22 10:19:30
解决Python运算符重载的问题
2022-07-04 23:09:33
MySQL长字符截断的实现示例
2024-01-25 23:55:01
python集合用法实例分析
2021-10-26 23:36:37
用Python监控你的朋友都在浏览哪些网站?
2022-10-20 00:37:07
ASP.NET中MD5和SHA1密码保护算法的使用
2007-08-24 09:18:00
SQL Server跨服务器操作数据库的图文方法(LinkedServer)
2024-01-16 20:05:50
python opencv实现目标区域裁剪功能
2022-07-15 19:17:56
GoLang中拼接字符串性能优化方法详解
2024-04-28 09:16:46
python实现求最长回文子串长度
2022-09-29 13:56:32
Python如何把多个PDF文件合并代码实例
2021-03-27 00:31:15
Python利用递归和walk()遍历目录文件的方法示例
2021-08-06 00:02:54
MySQL复合查询和内外连接的操作代码
2024-01-18 15:56:22
一文教你如何优雅处理Golang中的异常
2024-02-13 21:32:33
yui3的AOP(面向切面编程)和OOP(面向对象编程)
2009-09-24 14:47:00
Python脚本实现监听服务器的思路代码详解
2021-01-16 08:44:55
总结python 三种常见的内存泄漏场景
2023-02-18 16:37:49