我遇到了为xuijs创建等效slideDown的问题。
使用
轻松完成slideUp(隐藏)x$('elm').tween({height:'0'});
但似乎无法使用补间恢复到原始高度。
$x('elm').setStyle('height','auto !important');
工作正常但当然没有动画,
x$('elm').tween({height:'auto !important'});
不起作用。 (然而,将高度设置为固定值确实如此,但这不是一个选项)。
有点困在这里,document.getElementById('target_box')。一旦高度被tween或setStyle设置为0,clientHeight就没有帮助。我能想到的唯一解决方案是在div的初始全局崩溃之前将高度存储在数组中。
感谢任何帮助。
(受影响的div使用溢出:隐藏)
的问候,
//吨
答案 0 :(得分:1)
如果你正在使用html5为什么不在调用补间之前将高度存储为data-
属性?
x$.extend({
'slideUp' : function(){
this = this[0];
x$(this).attr('data-h',this.clientHeight);
x$(this).tween({height:'0'});
},
'slideDown' : function(){
this = this[0];
x$(this).tween({height:x$(this).attr('data-h');});
}
});
此代码未经测试,但值得一试。
答案 1 :(得分:1)
不确定你是否解决了这个问题,但我得到了一个解决方案。很确定有更好的方法,但这似乎可以解决问题。
emile.js and xui animation needing double click?
使用emile而不是补间,但是如果你愿意,你可以确定你可以改变它,但emile.js是在xui中。