javascript点击事件为什么要点击两次才触发?

<divclass="box"><h1>1.点击按键修改样式</h1><inputtype="button"value="修改样式"id="ck"/></div><scr... <div class="box">
<h1>1.点击按键修改样式</h1>
<input type="button" value="修改样式" id="ck"/>
</div>
<script>
window.onload=function(){
var oBox=document.getElementsByClassName('box')[0];
document.getElementById('ck').onclick=function(){
if(oBox.style.width === '100%'){
oBox.style.background='yellow';
oBox.style.width='50%';
}
else{
oBox.style.background="";
oBox.style.width='100%';
}
};
}
展开
 我来答
耔粕
2017-05-27 · TA获得超过209个赞
知道答主
回答量:131
采纳率:50%
帮助的人:24.4万
展开全部

<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
#box{
width: 100%;
}
</style>
</head>
<body>
<div id="box">
<h1>1.点击按键修改样式</h1>
<input type="button" value="修改样式" id="ck"/>
</div>
<script>
var box=document.getElementById("box");
var ck=document.getElementById("ck");
var x=true;
ck.onclick=function(){
if(x){
box.style.width="50%";
box.style.backgroundColor="yellow";
x=false;
}else{
box.style.width="100%";
box.style.backgroundColor="red";
x=true;
}
}
</script>
</body>
</html>


本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2017-05-27
展开全部
第一次触发的else 设置oBox.style.width='100%';
第二次才满足 改变颜色
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cs903016
2017-05-27 · TA获得超过1179个赞
知道小有建树答主
回答量:2599
采纳率:80%
帮助的人:1723万
展开全部
你的判断有问题把,oBox.style.width === '100%'这个不应该这样判断。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式