2013-03-08 120 views
0

我是jQuery-CSS-newbie,但我想將div移動到另一個。我無法弄清楚如何去做。jQuery slideDown slideUp點擊

我想實現的是滑動一個div,但我不知道如何定位它或使用正確的屬性。

這是我曾嘗試:

$("#two").click(function() { 
    $('#one').slideUp(500); 
}); 

http://jsfiddle.net/HUbHN/2/

的效果基本show的偉大工程,但我想綠色條向下移動到紅色。

我該如何實現該行爲?

在此先感謝

回答

0

我想你想要的東西一樣這 http://jsfiddle.net/HUbHN/6/

#main{ 
width: 400px; 
height: 400px; 
background-color: black; 
position:relative; 
} 

#one { 
width: 150px; 
height: 100px; 
background-color: green; 
position:relative; 
} 

#two { 
width: 150px; 
height: 150px; 
background-color: red; 
position:absolute; 
top:100px; 
} 

//js 

$("#two").click(function() { 
$('#one').animate({'height': '10px', 'top': '99px'}, 1000); 
}) 
+0

不錯。但jquery-ui是.animate()所必需的,不是嗎? – uhuarsch 2013-03-10 18:11:05

+0

@uhuarsch - animate是核心jQuery庫的一部分,某些緩動選項是ui的一部分,但.animate是庫的一部分 – 2013-03-10 21:47:43

2

你需要的是這樣的:Sample

$("#two").click(function() { 
    $('#one').slideUp(500, function(){ 
     $(this).insertAfter("#two").slideDown(500); 
    }); 
}); 

下面是修改後的版本:Sample2

$("#main").on('click', ' div:last', function() { 
    $(this).prev().slideUp(500, function(){ 
     $(this).insertAfter($(this).next()).slideDown(500); 
    }); 
}); 
+0

好吧,這很酷,但不是我想說的。我想讓紅色的那個固定在那個位置,然後將綠色的條滑動到紅色容器的頂部邊緣。 – uhuarsch 2013-03-08 14:04:13

+0

你的意思是你需要滑動綠色盒子,因爲它似乎躲在紅色盒子後面...? – Anujith 2013-03-08 14:25:45