0

我在为 xuijs 创建等效的 slideDown 时遇到问题。

slideUp(隐藏)很容易完成

x$('elm').tween({height:'0'});

但似乎没有办法使用补间恢复到原始高度。

$x('elm').setStyle('height','auto !important');

工作正常,但当然没有动画,

x$('elm').tween({height:'auto !important'});

不起作用。(然而,将高度设置为固定值,但这不是一个选项)。

有点卡在这里,document.getElementById('target_box').clientHeight 一旦通过 tween 或 setStyle 将高度设置为 0 也无济于事。我能想到的唯一解决方案是在 div 初始全局崩溃之前将高度存储在数组中。

感谢您的帮助。

(受影响的 div 使用溢出:隐藏)

问候,

//t

4

2 回答 2

1

不确定你是否解决了这个问题,但我有一个解决方案。很确定有更好的方法,但这似乎可以解决问题。

emile.js 和 xui 动画需要双击?

使用 emile 而不是 tween,但如果你愿意,你可以更改它,但是 emile.js 在 xui 中。

于 2012-04-13T17:18:24.497 回答
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');});     
  }
});

此代码未经测试,但值得一试。

于 2011-08-18T16:01:00.967 回答