2011-10-07 75 views
0

我有具体的div女巫一个触发事件工作正常,
这里是演示 http://jsfiddle.net/b5SVg/9/ 麻烦的是,我有外容器,我需要隐藏加载和显示/隐藏在切换。当然,我的集装箱显示屏首先发射,我需要它切换到切换状态。我知道你可能认为我应该把容器放在切换开关内,但是我不能,因为FX.slide在切换元素的周围增加了div,这个元素溢出隐藏并且有位置。我的容器必须保持在原来的位置。请指教链接事件的切换()

回答

2

阅读下面的代码中的注释;)

var container = $$('.container').setStyle('display','none'); //cache container (useful for the 'future' ;))" 

var mySlide= new Fx.Slide('hidden').hide(); 

$('toggle').addEvent('click', function(event){ 

    event.stop(); 

    container.setStyle('display','block'); //put it before the toggle 

    mySlide.toggle().chain(function(){ //at the end of the sliding, this callback will be called 
     if(!this.open){ //if it's closed 
      container.setStyle('display', 'none'); //hide the container 
     } 
    }); 

}); 

演示:http://jsfiddle.net/amgyw/1/

..btw你也可以使用元素 '滑' 的适当情况下,不宣var mySlide = ... ..像即$('hidden').get('slide').toggle()

+0

完美!谢谢! – Benn

+0

并感谢您的解释 – Benn

+0

不客气@Benn ..如果您发现答案(或者,一般来说,您的问题的答案)是正确的,请将其标记为已接受;) – stecb