js基础之arguments、css
arguments就是一个包含传入的参数的数组对象
栗子一:
function sum(){
var result=0;
for(var i=0;i<arguments.length;i++){
result += arguments[i];
}return result;
}
alert(sum(1,2,3,4,5));
css函数
原代码:
function css(){
if(arguments.length==2){//获取
//return arguments[0].style[arguments[1]];//undefined因为style只能取行间样式
//return arguments[0].currentStyle.arguments[1];
if(arguments[0].currentStyle){//做兼容性判断:判断特性比判断浏览器版本更高效
//IE
return arguments[0].currentStyle[arguments[1]];//currentStyle为计算后的样式或默认值(如font-size)
} else {
//ff/chrome
return getComputedStyle(arguments[0])[arguments[1]];//getComputedStyle为计算后的样式或默认值(如font-size)
}
}else if(arguments.length==3){//设置
arguments[0].style[arguments[1]]=value;
}
}
window.onload=function(){
var obtn = document.getElementById('btn1');
var odiv = document.getElementById('div1');
obtn.onclick=function(){
css(odiv,'background','#999');
alert(css(odiv,'width'));
}
}
增强可读性后的代码:
function css(obj,attr,value){
if(arguments.length==2){//获取
//return arguments[0].style[arguments[1]];//undefined因为style只能取行间样式
//return arguments[0].currentStyle.arguments[1];
if(obj.currentStyle){//做兼容性判断:判断特性比判断浏览器版本更高效
//IE
return obj.currentStyle[attr];//currentStyle为计算后的样式或默认值(如font-size)
} else {
//ff/chrome
return getComputedStyle(obj)[attr];//getComputedStyle为计算后的样式或默认值(如font-size)
}
}else if(arguments.length==3){//设置
obj.style[attr]=value;
}
}
最新文章
- Entity Framework 5.0 Code First全面学习
- 几款不错的VisualStudio2010插件
- [转]&#39;&#39;\\=DevExpress 中 汉化包 汉化方法
- SQL Server时间粒度系列----第1节时间粒度概述
- Code[VS] 2370 LCA 题解
- Windows Store App 控件动画
- proc插入数据到数据库
- undefined index : HTTP_RAW_POST_DATA
- Javascript DOM 03 表格添加、删除 + 搜索
- html5 canvas 实现简单的画图
- aix下java程序运行问题
- nodejs 搭建本地静态服务器
- case when then 中判断null的方法
- python数据分析之pandas数据选取:df[] df.loc[] df.iloc[] df.ix[] df.at[] df.iat[]
- python 爬虫之 selenium API
- Spring MVC 原理图
- 第80讲:List的泛型分析以及::类和Nil对象
- jQuery屏蔽浏览器的滚动事件,定义自己的滚轮事件
- 几种常用的bootstrap功能。
- Android 中调用本地命令