我现在定义一个函数function a1(obj){obj.style.color="white";}如果我把这个函数用这种方式添加,(假设button是一个按钮).button.onclick="a1(button)" ;会添加不上,当时仔细一想逻辑上又好像确实可行,因为a1(button)等于把obj变成了实际的button,为什么这样不行呢?我知道怎么弄能行,但是我确实想搞明白为什么这样不行,谢谢大家了
3 回答
已采纳
李晓健
TA贡献1036条经验 获得超461个赞
<!DOCTYPE HTML>
<html >
<head>
<meta charset="utf-8"/>
<title>xxxxxx</title>
</head>
<body>
<button id="button" style="background-color: #0b8df1">我是按钮</button>
<script type="text/javascript">
function a1(e){
var target = e.target;
target.style.color="white";
}
var button = document.getElementById('button');
button.onclick = a1;
</script>
</body>
</html>
qq_冲哥_0
TA贡献40条经验 获得超30个赞
在JS 中, 你想操作哪个元素,就要先获取哪个元素, 而不是直接用哪个元素。JS操作DOM元素,button 是HTML 元素。
a1(button)等于把obj变成了实际的button, 变成了 button.style.color ='white', 你应当没有这么写过。
都是 var oBtn = document.getElementsByTagName('button')[0],
oBtn.style.color ="white'
添加回答
举报
0/150
提交
取消
