当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javaScript 读取和设置文档元素的样式属性

Javascript
javascript 实现的类似hao123的多邮箱登录效果
不错的用resizeTo和moveTo两个函数实现窗口的“打乒乓球”效果
出现“不能执行已释放的Script代码”错误的原因及解决办法
“不能执行已释放的Script代码”错误的原因及解决办法
javascript入门·对象属性方法大总结
javascript入门·动态的时钟,显示完整的一些方法,新年倒计时
JavaScript 入门·JavaScript 具有全范围的运算符
用javascript实现代替marquee的滚动字幕效果代码
[原创]仿google adsense颜色选择器代码,从中易广告联盟程序提取
greenbrower用到的function.js代码集合
javascript flash下fromCharCode和charCodeAt方法使用说明
内部的小页面,用层制作,随机变色
javascript简写效果“神秘的眼睛”
用js写“算24”游戏的思路分析与实现代码
[原创]js循环输出图片,不足的要补0
json简单介绍
javascript 获取网页参数系统
[原创]js判断ie方法集锦(含正则)代码短小经典
javascript SocialHistory 检查访问者是否访问过某站点
[原创]js判断是否有中文的脚本_js判断中文方法集合

Javascript 中的 javaScript 读取和设置文档元素的样式属性


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 596 ::
收藏到网摘: n/a

有时候我们需要用js设置文档的样式属性,下面就是一些方法与原理分析,大家可以看下,应该就没问题了。 首先我们先说一下样式表属性
1. 内联样式即元素style属性里面设置的,级别最高
2. 页面样式表定义即页面<style></style>里面定义的,级别次之
3.外部链接样式表文件
JavaScript获取和设置文档元素的css属性:
1.获取元素Style属性里面设置的样式属性,
document.getElementById(id).style.height;
有,则返回属性值;没有则返回空
IE和火狐皆然,只是有的属性值返回可能不一样,比如像颜色火狐返回rgb,而IE是返回十六进制数字
测试代码:
<script type="text/javascript">
function getCss(){
alert(document.getElementById("aaa").style.height);
alert(document.getElementById("aaa").style.backgroundColor);
alert(document.getElementById("aaa").style.width);
document.getElementById("aaa").style.backgroundColor = ‘#dbdbdb';
//alert(myWidth);
}
</script>
<div id="aaa" class="bbb" style="height:20px; background-color:#FF0000;">
asdfasdfas
</div>
<input type="button" value="点击" onclick="getCss();" />
2.有时候我们的样式可能有多个地方设置了,我们也不知道它到底是外部样式表属性起作品,还是在内联样式里面起作用,所以我们就需要获取当前页面渲染的属性值。这个在IE和FF里面有些不同:
示例代码片断:
IE:document.getElementById('aaa').currentStyle.height
FF标准:document.defaultView.getComputedStyle(aaa,null).getPropertyValue('height')
这两个属性是只读的,若要改变元素样式还得使用style,它直接写在元素style属性里面级别最高起作用
3.写一个兼容IE和FF的函数来调用
复制代码 代码如下:

function getRealStyle(id,styleName) {
var element = document.getElementById(id);
var realStyle = null;
if (element.currentStyle)
realStyle = element.currentStyle[styleName];
else if (window.getComputedStyle)
realStyle = window.getComputedStyle(element,null)[styleName];
return realStyle;
}

调用:cur_height = parseInt(getRealStyle(CON_ID,'height'));
P.S:返回值通常会带有单位,需要使用parseInt函数提取数字,以方便后面的操作