2013-06-18 28 views
1

如果用戶從元素的下拉列表中進行一定的選擇,我需要隱藏div可見和可見div隱。但是,當前可見的div必須位於頁面上與先前可見的div相同的位置。使用jQuery使隱藏的div出現在可見div的相同位置(然後隱藏prev可見div)

如果它們都在頁面上顯示(都是可見的),則需要將它們放在另一個的頂部(即堆疊,因此如果向下滾動頁面,則一個元素出現在另一個之前)。

我該如何使用jQuery來進行這種定位?

+0

$ Element.show(); ? – Jonathan

+0

如果我正確理解你的問題,你可以簡單地使用相同的'left:'和'top:'值來定位它們'absolute'。 – supersize

+0

當你說「在另一個之上」時,你的意思是它應該被堆疊? – Joybroto

回答

4

無需過度複雜的事情。簡單地將它們放置在一個父<div>

<div> 
    <div class="a">A</div> 
    <div class="b">B</div> 
</div> 

每當.a使用display:none.b將在它的位置,反之亦然隱藏。

當兩者都顯示時,.b將根據您的意願在.a之下。

+0

這是一個好主意,謝謝!如果'.a'獲得'display:none;', – NealR

+0

不是'.b'跳躍? – supersize

+1

這正是我所需要的。我只是使用.show()/。hide()和兩個div將它們自己定位在他們需要的地方。再次感謝! – NealR