2013-10-29 110 views
1

所以我試圖用jQuery來滑動一個元素。我使用兄弟div來觸發動畫,但它的確可以工作,但是觸發器div並沒有與它一起滑動,我很困惑,爲什麼它沒有,因爲我見過的其他例子用零其他動畫效果。jQuery幻燈片兄弟元素

我用這對動畫效果:

$('.toggle').unbind('click').click(function(event) { 
    $(this).siblings('.content').animate({'width': 'toggle'}, 200, 'swing'); 
    event.stopPropagation(); 
}); 

我概述了一個完整的例子這裏的問題: http://jsfiddle.net/qcBz7/

謝謝!

+1

這一切都是關於定位和浮動元素。絕對元素不會移動它的兄弟姐妹。 – adeneo

+0

是的,但我見過的代碼實現了這兩個元素作爲絕對,所以我非常困惑: – user2932654

回答

0

我改變了JS這樣:

var go = true; 
$('.toggle').on('click', function(event) { 
    if (go) { 
     $(this).parent('.box').animate({marginRight: '0px'}, 200, 'swing'); 
     go = false; 
    } else if (!go) { 
     $(this).parent('.box').animate({marginRight: '-100px'}, 200, 'swing'); 
     go = true; 
    } 
    event.stopPropagation(); 
}); 

,我認爲這是你想要它,讓我知道,如果你需要改變什麼。

你最大的問題是CSS,所以我在那裏做了一些改變,你可以在小提琴中看到。

小提琴:http://jsfiddle.net/filever10/fXmDK/