我面臨以下問題:我怎樣才能讓一個div停留在兩個其他div與jqueryui幻燈片laternating?
我有一個包含三個其他div的容器div。 前兩個隱藏(顯示:無)第三個包含:文本,圖像或任何東西。當用戶點擊一個按鈕時,我希望三個div中的第一個可以用jQuery滑動,第三個可以在剛剛出現的那個下面移動。當再次點擊該按鈕時,第一個div應該向上滑動,第二個div也應該通過向上滑動出現。這應該被扭轉,下次按鈕被點擊時,無限...
我已經實現了我認爲會做這項工作,但唉,我錯了。 兩個div完全按照他們的要求移動,但第三個div保持低於其他兩個。
我的HTML是:
<div style="position: relative">
<div id="topMenuDivision" style="border: 1px solid; display: none; position:absolute">
here is Div 1
</div>
<div id="bottomMenuDivision" style="border: 1px solid; display: none; position:absolute">
here is Div 2
</div>
<div style="position: relative">
I want this to be at the bottom, bellow the other two regardless which (if any) is shown
</div>
我的JavaScript:
window.currentlyOpen = "none";
function togleTheDivs()
{
if (window.currentlyOpen=='none')
{
$('#topMenuDivision').show('slide',{direction: 'up'},750,callBack);
currentlyOpen = 'top';
}else if (window.currentlyOpen=='top')
{
$('#topMenuDivision').hide('slide',{direction: 'up'},750,callBack);
$('#bottomMenuDivision').show('slide',{direction: 'down'},750,callBack);
currentlyOpen = 'bottom';
}else if (window.currentlyOpen=='bottom')
{
$('#topMenuDivision').show('slide',{direction: 'up'},750,callBack);
$('#bottomMenuDivision').hide('slide',{direction: 'down'},750,callBack);
currentlyOpen = 'top';
}
}
function callBack()
{
}
這裏是我的代碼的jsfiddle:
可能是定位?錯誤地使用幻燈片?我在這裏不知所措... 任何想法?
不,這不是必要的行爲。當你點擊按鈕時,圖層會離開,出現間隙,然後新的移動到位。那裏一定不能有差距。再加上第一次點擊按鈕,新的div必須從下面,下一次從上面來。 –
我明白了。那麼沒有真正的方法來定位基於非父/子絕對元素的元素。但在你的情況下,你仍然可以僞造它。你對那個怎麼想的? http://jsfiddle.net/QTW3u/17/ – Skwal
好吧,這就是我正在尋找。只是一個問題,以便我明白髮生了什麼。在我的示例中,顯示div時容器高度發生變化。即使我將第三個div放在相對或絕對位置並綁定到容器的底部,它仍然不會在顯示第一個div時移動。爲什麼? –