首先我们先说一下样式表属性 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函数提取数字,以方便后面的操作
推荐阅读
IE8 原生JSON支持
这种新的原生JSON功能能够使Internet Explorer 8对现有的AJAX应用程序运行得更加快速和安全。什么是JSON?大多数开发者不是只进行AJAX程序程序开发的,我这里先介绍一点背景知识。JSON是一种简单的、人能够阅读的数>>>详细阅读
本文标题:javaScript 读取和设置文档元素的样式属性
地址:http://www.17bianji.com/kaifa2/JS/28814.html
1/2 1