【问题标题】:jQuery outer height is zero?jQuery外部高度为零?
【发布时间】:2011-05-06 08:48:26
【问题描述】:

为什么我的搜索表单的高度是 0?它至少有 20 像素高。

jQuery(function($) { // Document ready
    var s_height = $("#search_form").outerHeight(); // Height of searchform
    alert(s_height) // 0

【问题讨论】:

  • #search_form 有动态加载的内容吗? CSS中有没有设置高度?
  • "#search_form" 在 JS 运行时是否可见? jQuery 无法从隐藏元素中获取宽度/高度。
  • @Blair - 你确定吗? Here's an example 使用隐藏的<div>。它至少在 Safari 中正确地给出了.outerHeight()
  • 根据给出的信息我不能肯定地说,但有时块级元素的高度可以为 0,即使它们有内容。例如,如果所有内容都在一个浮动的子元素中。
  • 问题可能是他正在寻找表格的外部高度#search_form

标签: jquery height


【解决方案1】:

使用 jQuery,您只能获取可见元素的高度。因此,请确保它在您的 JS 运行时可见,或者如果您当时需要隐藏它,请使用 several workarounds 之一。

正如您在 cmets 中提到的,div 被隐藏然后淡入。

【讨论】:

    【解决方案2】:

    如果 search_form 包含浮点数,请尝试overflow:hidden;。如果它包含图像,请尝试$(window).load(function(){ /* code */ })

    【讨论】:

      猜你喜欢
      • 2011-03-11
      • 2012-08-19
      • 1970-01-01
      • 1970-01-01
      • 2023-04-05
      • 2017-04-17
      • 1970-01-01
      • 2014-05-23
      • 1970-01-01
      相关资源
      最近更新 更多