变量值出现问题

时间:2012-10-13 20:12:28

标签: jquery variables load

我有一组div,通过它们包含的内容的高度来达到它们的高度。我这样做的原因是因为我想切换这些div中的内容,但是希望它们相应地调整它们的高度,这也与在动画期间调整它们的高度有关。问题是当我在高处加载新内容时没有正确调整。我正在加载文本,并使用jquery .load并使用spans来包含它所持有的外部页面中的文本,如果我包含带有

的文本由于某种原因它会失去格式化.load,不知道为什么。我需要帮助让容器符合.load更改的内容。

http://klossal.com/brigham_about2.html这是页面,顶部动画是使用.load的动画而不是正确调整高度,你可以在开始动画时看到它。第二个动画是使用内联内容和容器调整他们想要的方式。

$("#outpt_main_open").click(function() {
$('#header_img_outpt_main').load('/brigham_profiles2.html     
#header_karlene_salguero_photo');
$('#header_paragraph_outpt_main').load('/brigham_profiles2.html      
#header_txt_karlene_salguero');
$('#bio_txt_outpt_main').load('/brigham_profiles2.html #bio_txt_karelene_salguero');
$('#edu_txt_outpt_main').load('/brigham_profiles2.html #edu_txt_karelene_salguero');
$('#contact_txt_outpt_main').load('/brigham_profiles2.html  
#contact_txt_karelene_salguero');
profile_outpt_main_open_animation();

});

这是提示加载的按钮。我是否需要首先发生加载然后提示动画功能?或者我是否需要以某种方式使用新的加载内容重新采样变量,或者他们是否自己这样做?或者这是完全不同的东西?非常感谢任何帮助,这让我疯狂。

1 个答案:

答案 0 :(得分:0)

问题是动画函数profile_outpt_main_open_animation()使用了元素的原始高度,而不是加载新内容后的新高度。要解决此问题,请在计算每个元素的顶部时使用.height()函数。

所以,例如,而不是

$("#profile_outpt_main_BIO").delay(330).animate({
    top:  profile_outpt_main_HEADER_ht + 20
}, 400);

而是使用新的高度:

$("#profile_outpt_main_BIO").delay(330).animate({
    top:  $("#profile_outpt_main_HEADER").height() + 20
}, 400);

您显然必须更改此功能中所有对原始高度的引用,而不仅仅是此处演示的引用。