Jquery高度自动检测并改变,如果小于

时间:2012-10-08 16:08:00

标签: jquery height document

我编写了以下jquery来更改#dash-nav的高度,如果它小于#dash-content-wrap的高度。它用于仪表板的基本垂直导航。

if ($('#dash-nav').height() < $('#dash-content-wrap').height()) {
    $("#dash-nav").height( $("#dash-content-wrap").height() );
} 

代码在jsFiddle中完全符合预期,然而在我的实际网站上

我尝试使用以下两种方法加载脚本,但没有任何差异:

  • (window).load
  • (document).ready

任何想法&amp;帮忙,非常感谢!谢谢

1 个答案:

答案 0 :(得分:0)

您的jsfiddle链接要求输入用户名和密码(基本身份验证)。 $(document).ready(function(){...})应该可以正常工作,因为只有在DOM元素完全加载后才会触发它

请让你的css课程正确。我的猜测是,如果你可能有浮动:离开dash-nav内的某个地方,高度可能无法给出正确的值。您可以尝试clear:both,看看是否能解决问题。这只是我的猜测。

也尝试这样做:

window.setTimeout(function(){
    components();
},1000);

$(document).ready()内,延迟时间为1000毫秒。

以上代码仅用于调试目的。您不应该使用它,而是尝试修复真正的问题,但它至少应该让您知道问题是否未加载dash-nav或其他内容。

修改:要澄清我在说什么,请参阅此jsfiddle链接:http://jsfiddle.net/kfdbz/3/

除非您取消注释:<div style="clear:both"></div>,否则您将获得0

的高度