【问题标题】:JQuery getting and setting heightJQuery获取和设置高度
【发布时间】:2013-04-13 16:17:01
【问题描述】:

我试图让 div '.impress' 的高度与 div '.page' 的高度相同,但我的 '.impress' div 的高度显示不正确('.impress' 太小了) .

jQuery:

var getHeight = $('.page').height();
$(".impress").css('height', getHeight+200);

【问题讨论】:

  • 你得到什么错误?
  • 使用css 函数时,您正在设置原始样式。 height 需要像 px 这样的单位:.css('height', getHeight+200+'px')
  • 谢谢,我添加了所有这些,但是当我刷新页面时,它仍然显示旧的预览(我测试了它,但它一直保持不变)
  • 已完成fiddle

标签: javascript jquery html height


【解决方案1】:

你应该使用jquery的height()方法来设置高度:

$(".impress").height(getHeight+200)

或者,如果您使用的是css('height',...),请确保包含单位,在您的情况下:

$(".impress").css('height', (getHeight+200) + 'px')

【讨论】:

  • 使用jQuery设置.impress的高度
  • 谢谢,我添加了所有这些,但是当我刷新页面时,它仍然显示旧的预览(我测试了它,但它一直保持不变)
  • @JSHelp,能否在设置高度之前在代码中添加console.log('getHeight=' + getHeight);行,然后运行页面并查看日志输出?
  • 现在一切正常。感谢您的所有帮助
【解决方案2】:

在访问.impress 的高度之前,您是否确保 DOM 已加载并准备就绪?

确保这发生在 $(document).ready(function() {}); 中,以确保 .impress 已布局并具有高度。

【讨论】:

  • 感谢您的提示,但我知道了
【解决方案3】:

首先确保.page 存在。

if($('.page').length){
    var getHeight = parseInt($('.page').height());
    $(".impress").css('height', getHeight+200);
}
else{
    alert('oops');
}

更新:

如果存在$('.page'),请确保它有一定的高度。所有孩子都漂浮的父母可能height = 0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-05-01
    • 1970-01-01
    • 2023-03-17
    • 2011-02-26
    • 2012-06-16
    • 2012-02-06
    • 2015-04-24
    • 2016-03-25
    相关资源
    最近更新 更多