我正在使用 JQuery,并且正在尝试在子 div 滑入和滑出时更改 div 框的 html。我的问题是下面的代码没有改变#menu_text 的html 值。它只显示隐藏菜单,并没有检测到由 slideToggle 更改的真实高度。
$('#menu').click(function () {
$('#menu_links').slideToggle('slow', function(){
console.log('Debug : %s', $('#menu_links').height());
if ($('#menu_links').height() == 1)
$('#menu_text').html("Show Menu");
else if ($('#menu_links').height() == 20)
$('#menu_text').html("Hide Menu");
});
});
在 firebug 控制台中检查后,高度的值永远不会从 20 更改,除非您非常快速地多次单击 div,然后它将更改为 1。(我应该补充一点,样式表中定义的高度是 20)
文档说 slideToggle 只影响对象的高度。我错过了什么吗?感谢您的帮助。
<div id="menu"><p id="menu_text">Show Menu</p>
<div id="menu_links">
Stuff
</div>
</div>