<html>
<head>
<meta charset="utf-8">
<title>无标题文档</title>
<script>
//完成如下css函数。当传参数为2个时,返回obj对象的name样式值;传参为3个时,把obj的name样式设置为value。
function css(obj, name, value)
{
if(typeof(value)=="undefined"){ //判断value是否有值
return obj.style[name] //返回obj对象的name样式值
}else{
obj.style[name]=value //把obj的name样式设置为value
}
}
window.onload=function ()
{
var oDiv=document.getElementById('div1')
alert(css(oDiv, 'width'))
css(oDiv, 'background', 'green')
}
</script>
</head>
<body>
<div id="div1" style="width:200px height:200px background:red">
</div>
</body>
</html>
主要问题是怎么判断是2个参数还是3个参数,那么只需判断value是否有传值进来就行
typeof(value)=="undefined"为真就表示没有传值进来
以上代码和说明希望对您有帮助
建议你将错误的样式定义成一个class,错误时直接给元素添加class,成功时移除class就行了:
.MyError {padding:2px 2px
background-color:yellow
color:#333
border:1px solid orange
vertical-align:middle
}
验证失败时:
element.addClass("MyError")验证成功时:
element.removeClass("MyError")