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

Jquery高度自动检测,如果小于,jquery,height,document,Jquery,Height,Document,我编写了以下jquery,以更改#dash nav的高度(如果它小于#dash content wrap)。它用于仪表板上的基本垂直导航 if ($('#dash-nav').height() < $('#dash-content-wrap').height()) { $("#dash-nav").height( $("#dash-content-wrap").height() ); } if($(“#仪表板导航”).height()

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

if ($('#dash-nav').height() < $('#dash-content-wrap').height()) {
    $("#dash-nav").height( $("#dash-content-wrap").height() );
} 
if($(“#仪表板导航”).height()<$(“#仪表板内容包装”).height(){
$(“#仪表板导航”).height($(“#仪表板内容包装”).height();
} 
该代码在中完全按照预期工作,但是在我的live站点上没有

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

  • (窗口)。加载
  • (文档)。准备就绪

任何想法和帮助,非常感谢!谢谢

您的JSFIDLE链接正在询问用户名和密码(基本身份验证)
$(document).ready(function(){…})
应该可以很好地工作,因为它只有在DOM元素完全加载后才会启动

请确保你的css类是正确的。我的猜测是,如果您可能有float:left在
仪表板导航
内的某个地方,那么高度可能没有给出正确的值。您可以尝试
clear:both
,看看这是否解决了问题。这只是我的猜测

也可以尝试这样做:

window.setTimeout(function(){
    components();
},1000);
$(document).ready()中提供1000毫秒的延迟

以上代码仅用于调试目的。您不应该使用它,而是尝试修复真正的问题,但它至少应该让您知道问题是否不是加载
仪表板导航
或其他东西

编辑:要澄清我所说的内容,请查看以下JSFIDLE链接:


除非您取消注释:
您将获得高度
0

实时站点的url是什么?可能只是缓存问题,您是否尝试过清除浏览器的缓存?是的,我已经清除了浏览器缓存几次,认为这将是问题所在。我无法给出url,因为它是一个dev服务器。添加超时在我的小提琴中再次起作用,但在实时浏览器上不起作用,检查css清除/浮动now@Matt这很奇怪。如果您最近碰巧更改了实时CSS,您可能应该只在您的实时服务器上检查CSS问题。请参阅我的编辑,了解我所谈论的问题。你试过了吗?是的,在仪表板导航中浮动的所有东西也都使用clear:两者都使用;