js访问CSS的2种方法(点法和中括号法的区别),内含获取属性的兼容写法
2016-12-06 00:00
609 查看
1.1 js 常用 访问 CSS 属性
我们访问得到css 属性,比较常用的有两种:1. 利用点语法
box.style.width box.style.top
点语法可以得到 width 属性 和 top属性 带有单位的。 100px
但是这个语法有非常大的缺陷, 不变的。
后面的width 和 top 没有办法传递参数的。
var w = width;
box.style.w
2. 利用 [] 访问属性
语法格式: box.style[“width”]
元素.style[“属性”];
console.log(box.style["left"]);
最大的优点 : 可以给属性传递参数
1.2 得到css 样式
我们想要获得css 的样式, box.style.left box.style.backgorundColor但是它只能得到 行内的样式。
但是我们工作最多用的是 内嵌式 或者 外链式 。
怎么办?
核心: 我们怎么才能得到内嵌或者外链的样式呢?
1. obj.currentStyle ie opera 常用
外部(使用<link>)和内嵌(使用<style>)样式表中的样式(ie和opera)
2 .window.getComputedStyle("元素", "伪类") w3c
两个选项是必须的, 没有伪类 用 null 替代
3 兼容写法 :
我们这个元素里面的属性很多, left top width ===
我们想要某个属性, 就应该 返回改属性,所有继续封装 返回当前样式的 函数。
1 var demo = document.getElementById("demo");
1 function getStyle(obj,attr) { // 谁的 那个属性
2 if(obj.currentStyle) // ie 等
3 {
4 return obj.currentStyle[attr];
5 }
6 else
7 {
8 return window.getComputedStyle(obj,null)[attr]; // w3c 浏览器
9 }
10 }
11 console.log(getStyle(demo,"width"));
相关文章推荐
- jquery的attr方法与ie7不兼容,js获取html标签自定义属性
- js中获取属性的三种方法及区别
- 第60天:js常用访问CSS属性的方法
- Struts2 访问Action和Jsp页面出现的路径问题解决方案之 ---- 为jsp、图片、js、css等获取Web工程的绝对路径的方法
- jQuery和js一些标签属性的获取和修改方法以及区别
- js---原生JS数组arr遍历方法forEach()和map()遍历的区别以及兼容写法
- JavaScript获取css属性的兼容写法
- JS不兼容减号,css属性转驼峰写法
- 由于 box.style.left只能获取行内样式的值,不能获取到css中JS中样式left等值;用JS获取外部CSS样式--currentStyle和getComputedStyle的兼容写法
- JS:访问对象属性的两种方式区别之中括号引用方式
- ASP.Net访问母版页(MasterPage)控件、属性、方法及母版页中调用内容页,获取用户自定义控件里面的子控件的方法
- fckeditor编辑器之js客户端获取和设置 fckeditor 属性的方法
- css 语法与js 语法属性 区别
- ASP.Net访问母版页(MasterPage)控件、属性、方法及母版页中调用内容页,获取用户自定义控件里面的子控件的方法
- document.getElementById("idName")用js方法获取元素,则设定风格属性的方法为
- 使用js操作css属性的写法规律
- JavaScript获取外部CSS属性方法介绍
- [分享]js访问xml之 各种对象的属性和方法
- ASP.Net访问母版页(MasterPage)控件、属性、方法及母版页中调用内容页,获取用户自定义控件里面的子控件的方法
- js 获取div里的值 2种方法给父窗口控件赋值和取值