javascript - 这个DIV为什么点两次不会消失呢?
黄舟
黄舟 2017-04-11 10:14:42
[JavaScript讨论组]

就是想点击按钮时如果是none的话就让它变成block 如果是block的话就让它变成none 为什么只能变一次呢?想再变消失却不行呢

<html>
    <head>
        <meta charset="utf-8">
        <style>
        #p1{width:400px;height: 400px;background-color: red;display: none;}
        </style>
        <script>
            window.onload=function (){
                var op=document.getElementById('p1');
                var oBtn=document.getElementById('btn1');
                oBtn.onclick=function(){
                   if(op.style.display=="none"){
                     op.style.display="block";
                   }else{
                     op.style.display="none";
                   }
                }
            }
        </script>
    </head>
    <body>
        <input id="btn1" type="button" value="按钮">
        <p id="p1">
        </p>
    </body>
</html>
黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(4)
天蓬老师

两个问题
1.if(op.style.display="none") 改为==或者===;
2.style只能获得内联样式。

ringa_lee

因为你写的判断是 if(op.style.display="none"){ 一个=是赋值,==才是判断。

高洛峰

上面说了,style只能拿内联样式
你要拿css内的样式需要这样拿styles = getComputedStyle(op);
styles.display
但是这样不能修改或者是不推荐修改,你要修改的话,还是用op.style.display = 'xxx';这样修改

PHPz

tewretetehello

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号