账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    js无法更改div的高度,也获取不到
    30
    0

    很简单一个demo练习,想实现移入到bottom上时top的高度会变大。但试了好多次不知道为什么出错。报错的内容也看不懂什么意思。请大神帮我看一下。
    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8" />
    <title></title>
    <style>
    *{margin: 0;padding: 0;}
    body{background-color: #fff;font-size: 13px;color: #333;font-family: "微软雅黑";}
    .main{

    margin:0 auto;
    width: 600px;
    /*height: 300px;*/

    }
    .main .top{

    background-color: #ccc;
    text-align: center;
    font-size: 24px;
    height: 50px;
    overflow: hidden;

    }
    .main .bottom{

    height: 40px;
    line-height: 40px;
    background-color: #555;
    text-align: center;
    color:#fff;

    }
    </style>
    </head>
    <body>

    <div class="main">
        <div class="top" id="top">就是这个狗日的top不显示</div>
        <div class="bottom" id="bottom">为什么移入你没反应</div>
    </div>

    </body>
    <script>
    var top=document.getElementById('top');
    var bottom=document.getElementById('bottom');
    bottom.onmouseover=function(){

    top.style.height='600px';// 无法设置高度
    
    
    
    /*var abc=getStyle(top,'height');
    console.log(abc);
    //另外,这里试着获取top的当前显示的高度也不行
    */

    }

    function getStyle(obj,attr)

    {
        return obj.currentStyle?obj.currentStyle[attr]:getComputedStyle(obj,null )[attr];
    }

    </script>
    </html>

    0
    打赏
    收藏
    点击回答
    您的回答被采纳后将获得:提问者悬赏的 11 元积分
        全部回答
    • 0
    • 豆腐滚大肠 普通会员 1楼

      在JavaScript中,如果一个元素的高度无法通过改变其CSS样式或使用JavaScript来获取,那么这可能是由于以下原因:

      1. 元素本身没有高度:这个元素可能是一个绝对定位的元素,或者是一个高度是固定值的元素。如果是这样,那么你需要调整元素的位置来改变其高度。

      2. 元素的父元素没有设置高度:这个元素可能是在一个没有父元素的父元素中。在这种情况下,你需要调整父元素的高度以满足你的需求。

      3. 元素没有添加任何CSS样式:如果你没有给这个元素添加任何CSS样式,那么它将无法设置其高度。

      4. 元素的兄弟元素没有设置高度:如果你的元素有一个兄弟元素,而这个兄弟元素没有设置高度,那么这个兄弟元素的高度将无法覆盖你的元素。

      如果你确定元素没有设置高度,那么你可能需要检查元素的CSS样式或者使用JavaScript来改变元素的高度。例如,你可以使用JavaScript来改变元素的height属性的值,或者使用CSS的height属性来改变元素的高度。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部