Mootools:隐藏元素的高度

时间:2011-05-07 11:55:43

标签: javascript mootools

早上好,

我正在尝试创建一个Mootools效果来显示和隐藏对讨论板上评论的回复。当用户单击评论中的“回复”链接时,我想增加评论容器的高度,然后淡出回复内容。如果回复内容已经可见,单击该链接将反转该效果。

我有点工作,但是我无法获得隐藏元素的正确高度(在我的JS中回复H)。我尝试过getDimensions(),measure()和getComputedSize(),但是它们都给出了相同的结果:当元素设置为display:none时,我得到的高度太小;当我将它们设置为显示时:阻止高度正确。任何善良的人都可以找到我出错的地方吗?

http://jsfiddle.net/andfinally/tVBCa/

干杯 佛瑞德

=======================

稍后一点

刚刚注意到.comments列表容器的宽度似乎与此问题有关。当我删除该宽度时效果正常。这可能意味着当getDimensions没有嵌套在任何东西时,它会获得元素的高度。任何人都可以建议我如何计算嵌套时的高度?

干杯 佛瑞德

2 个答案:

答案 0 :(得分:4)

你可以使用Fx.Reveal,当你遇到这些问题时它非常有用,它简化了很多你的代码,即(我已经分了你的例子)=> http://jsfiddle.net/steweb/DH27F/

答案 1 :(得分:1)

解决问题的简单方法:

replies.show();
var repliesH = replies.getDimensions().y;            
replies.hide();

只需展示它,获取尺寸并再次隐藏它。这种运行速度非常快,以至于用户都看不到。

您更新的小提琴here

相关问题