为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的点击事件第一次点击没反应?

<html>
<head>
<style type="text/css">
body{
            background-color:#333;
        }
#myA{
            background-color:#fff;
            width:350px;
            margin-left:10px;
            color:#666;
            padding:10px;
            cursor:pointer;
        }
#hideArea{
            height:30px;
            width:350px;
            background-color:#fff;
            display:none;
        }
    </style>
</head>
<body>
<script>
        function aa(){
            var myArea = document.getElementById("hideArea");
            if(myArea.style.display=="none"){
                myArea.style.display="block";
            }
            else{
                myArea.style.display="none";
            }
        }
    </script>
<div id="myA" onclick="aa()">不会了怎么办
  <div id="hideArea"></div>
</div>
</body>
</html>


正在回答

6 回答

把19行的代码给删了,就是这一句 display:none;

然后36行加上这一句:

<div id="hideArea" style="display:none;" ></div>

第一次点击就有反应了。

原先的代码读不到 display:none;第一次点击只是给加上 display:none;

2 回复 有任何疑惑可以回复我~
#1

水中熊 提问者

哦,好使了,谢谢啊。 但是原先的代码为什么读不到 display:none;?
2015-06-01 回复 有任何疑惑可以回复我~
#2

Perona 回复 水中熊 提问者

这个我也不知道怎么解释。。。才疏学浅。。。见谅见谅!
2015-06-01 回复 有任何疑惑可以回复我~
#3

PAN_0109 回复 水中熊 提问者

大概JS读取的只是div的行内样式吧
2015-11-09 回复 有任何疑惑可以回复我~

我也遇到了这样的问题@!

0 回复 有任何疑惑可以回复我~
#1

微笑恍若陽光燦丶

1111111111111111111111111111
2016-05-06 回复 有任何疑惑可以回复我~

贴代码

0 回复 有任何疑惑可以回复我~
#1

水中熊 提问者

sorry,不知道别人看不到我的代码,这次在帮我看看吧,就是第一次点击白块没反应,第二次才好使。
2015-06-01 回复 有任何疑惑可以回复我~
#2

一树青枫 回复 水中熊 提问者

同问~
2015-08-12 回复 有任何疑惑可以回复我~
#3

水中熊 提问者 回复 一树青枫

今天看到才想起来以前问过这个问题,现在我知道了,因为js是获取不到嵌入式样式(页面的style里)的display属性,所以第一次执行aa()时,if里的就是false了,然后执行else里的代码,而这里的代码为hideArea块加上了display=none的属性,然后第二次点击就可以正常判断了。
2015-11-05 回复 有任何疑惑可以回复我~
#4

微笑恍若陽光燦丶 回复 一树青枫

答案呢
2016-05-06 回复 有任何疑惑可以回复我~
查看1条回复

举报

0/150
提交
取消

为什么我的点击事件第一次点击没反应?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信