js获取某元素的class里面的css属性值代码


Posted in Javascript onJanuary 16, 2014

用js如何获取div中css的 margin、padding、height、border等。你可能说可以直接用document.getElementById("id").style.margin获取。但是你说的只能获取直接在标签中写的style的属性,无法获取标签style外的属性(如css文件中的属性)。而下面方法则两者值都可以获取。
实例效果图如下:

js获取某元素的class里面的css属性值代码

 

js在获取css属性时如果标签中无style则无法直接获取css中的属性,所以需要一个方法可以做到这点。
getStyle(obj,attr) 调用方法说明:obj为对像,attr为属性名必须兼容js中的写法(可以参考:JS可以控制样式的名称写法)。

Js代码

function getStyle(obj,attr){
    var ie = !+"\v1";//简单判断ie6~8
 if(attr=="backgroundPosition"){//IE6~8不兼容backgroundPosition写法,识别backgroundPositionX/Y
  if(ie){        
   return obj.currentStyle.backgroundPositionX +" "+obj.currentStyle.backgroundPositionY;
     }
 }
 if(obj.currentStyle){
  return obj.currentStyle[attr];
 }
 else{
  return document.defaultView.getComputedStyle(obj,null)[attr];
 }
}

完整实例测试代码:
Html代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>js获取某元素的class里面的css属性值</title>
<style>
#box1{margin:5px;padding:5px;height:100px;width:200px;}
a{border:1px solid #ccc;border-radius:3px;padding:3px 5px;margin:5px 0;display:inline-block;background:#eee;color:#f60;text-decoration:none;font-size:12px;}
a:hover{color:#ff0000;background:#fff;}
</style>
</head>
<body>
<div id="box1">box1的css.#box1{margin:5px;padding:5px;height:100px;width:200px;}</div>
<a href="javascript:;" onclick="getcss('marginTop')">获取box1的margin-top</a><br />
<a href="javascript:;" onclick="getcss('paddingTop')">获取box1的padding-top</a><br />
<a href="javascript:;" onclick="getcss('height')">获取box1的height</a><br />
<script>
//获取class里面的属性值
var divs=document.getElementById("box1");
function getStyle(obj,attr){
    var ie = !+"\v1";//简单判断ie6~8
 if(attr=="backgroundPosition"){//IE6~8不兼容backgroundPosition写法,识别backgroundPositionX/Y
  if(ie){        
   return obj.currentStyle.backgroundPositionX +" "+obj.currentStyle.backgroundPositionY;
     }
 }
 if(obj.currentStyle){
  return obj.currentStyle[attr];
 }
 else{
  return document.defaultView.getComputedStyle(obj,null)[attr];
 }
}
function getcss(typ){
 alert(getStyle(divs,typ));
}
</script>
</body>
</html>
Javascript 相关文章推荐
JavaScript 应用技巧集合[推荐]
Aug 30 Javascript
jquery 操作单选框,复选框,下拉列表实现代码
Oct 27 Javascript
asm.js使用示例代码
Nov 28 Javascript
js中判断对象是否为空的三种实现方法
Dec 23 Javascript
javaScript年份下拉列表框内容为当前年份及前后50年
May 28 Javascript
一道关于JavaScript变量作用域的面试题
Mar 08 Javascript
JavaScript中无法通过div.style.left获取值的解决方法
Feb 19 Javascript
20170918 前端开发周报之JS前端开发必看
Sep 18 Javascript
解决vue项目刷新后,导航菜单高亮显示的位置不对问题
Nov 01 Javascript
JavaScript常用工具函数大全
May 06 Javascript
微信小程序调用后台service教程详解
Nov 06 Javascript
微信小程序tab左右滑动切换功能的实现代码
Feb 08 Javascript
JS可以控制样式的名称写法一览
Jan 16 #Javascript
js仿百度贴吧验证码特效实例代码
Jan 16 #Javascript
js中传递特殊字符(+,&amp;)的方法
Jan 16 #Javascript
利用浏览器全屏api实现js全屏
Jan 16 #Javascript
JQuery文本改变触发事件如聚焦事件、失焦事件
Jan 15 #Javascript
JS和Jquery获取和修改label的值的示例代码
Jan 15 #Javascript
javascript中验证大写字母、数字和中文
Jan 15 #Javascript
You might like
Win2003服务器安全加固设置--进一步提高服务器安全性
2007/05/23 PHP
供参考的 php 学习提高路线分享
2011/10/23 PHP
php和javascript之间变量的传递实现代码
2012/12/19 PHP
php foreach正序倒序输出示例代码
2014/07/01 PHP
php表单习惯用的正则表达式
2017/10/11 PHP
PHP观察者模式实例分析【对比JS观察者模式】
2019/05/22 PHP
js 页面执行时间计算代码
2009/03/04 Javascript
使用CSS+JavaScript或纯js实现半透明遮罩效果的实例分享
2016/05/09 Javascript
vue多种弹框的弹出形式的示例代码
2017/09/18 Javascript
vue.js根据代码运行环境选择baseurl的方法
2018/02/28 Javascript
详解vue 计算属性与方法跟侦听器区别(面试考点)
2018/04/23 Javascript
jQuery实现点击旋转,再点击恢复初始状态动画效果示例
2018/12/11 jQuery
js实现点击按钮随机生成背景颜色
2020/09/05 Javascript
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
Python3基础之list列表实例解析
2014/08/13 Python
在Python的循环体中使用else语句的方法
2015/03/30 Python
Python设计模式之原型模式实例详解
2019/01/18 Python
Python高级编程之消息队列(Queue)与进程池(Pool)实例详解
2019/11/01 Python
Python实现AI自动抠图实例解析
2020/03/05 Python
python不同版本的_new_不同点总结
2020/12/09 Python
python wsgiref源码解析
2021/02/06 Python
美国韩国化妆品和护肤品购物网站:Beautytap
2018/07/29 全球购物
Koral官方网站:女性时尚运动服
2019/04/10 全球购物
优秀教师事迹简介
2014/02/02 职场文书
人力管理专业毕业生求职信
2014/02/27 职场文书
酒店管理毕业生自我鉴定
2014/03/02 职场文书
《花瓣飘香》教学反思
2014/04/15 职场文书
工程售后服务承诺书
2014/05/21 职场文书
2015年幼儿园新年寄语
2014/12/08 职场文书
2015年综治宣传月活动总结
2015/03/25 职场文书
大学生村官入党自传
2015/06/26 职场文书
2016年党员学习廉政准则心得体会
2016/01/20 职场文书
小学体育课教学反思
2016/02/16 职场文书
python中if和elif的区别介绍
2021/11/07 Python
MySQL实战记录之如何快速定位慢SQL
2022/03/23 MySQL
MySQL去除密码登录告警的方法
2022/04/20 MySQL