2017-10-09 58 views
1

如何製作,通過在「div」中按「a」開啓窗口應該在「div」之間。位置由id js?

按下「id 2」,窗口顯示在「id 1」和「id 3」之間。按下「id 3」,窗口顯示在「id 2」和「id 4」之間。

$('#add').hide(); 
 
    
 
$('#open_add').click(function() { 
 
     $('#add').show(); 
 
     $('#3').hide(); 
 
    }); 
 
     
 
$('#close_add').click(function() { 
 
     $('#add').hide();  
 
     $('#3').show(); 
 
    });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script> 
 
<div id="add"> 
 
<a href="#" id="close_add">Close add</a> 
 
</div> 
 

 
<div id="1"> 
 
    <p>First</p> 
 
</div> 
 

 
<div id="2"> 
 
    <p>Second</p> 
 
</div> 
 

 
<div id="3"> 
 
    <a href="#" id="open_add">Open add</a> 
 
</div> 
 

 
<div id="4"> 
 
    <p>Fourth</p> 
 
</div> 
 

 
<div id="5"> 
 
    <p>Fifth</p> 
 
</div>

+0

的可能的複製[如何移動在jQuery的HTML元素?( https://stackoverflow.com/questions/4428312/how-do-i-move-an-html-element-in-jquery) –

回答

1

嘗試插入DIV喜歡的是這個例子:

$(document).ready(function(){ 
 
$('div p').click(function() { 
 
$('#add').remove().insertAfter($(this).parent()).show(); 
 
}) 
 
}) 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div id="add" style="display:none;"> 
 
<a href="#" id="close_add">Close add</a> 
 
</div> 
 
<div id="open_add" style="display:none;"> 
 
<a href="#" id="open_add">Open add</a> 
 
</div> 
 

 
<div id="1"> 
 
    <p>First</p> 
 
</div> 
 

 
<div id="2"> 
 
    <p>Second</p> 
 
</div> 
 

 
<div id="3"> 
 
    <p>Third</p> 
 
</div> 
 

 
<div id="4"> 
 
    <p>Fourth</p> 
 
</div> 
 

 
<div id="5"> 
 
    <p>Fifth</p> 
 
</div>

+0

但是,如何可以使選擇的元素隱藏?例如:點擊「第四次」出現「關閉添加」和「第四次」消失等。 –

+1

這很簡單。只要隱藏一個元素並標記爲隱藏。在下一次點擊時顯示所有隱藏的元素,然後標記。嘗試一下,將此代碼添加到'click'功能 '$('。hiddenItem')。removeClass('hiddenItem')。show(); $(this).addClass('hiddenItem')。hide();' –

+0

我可以問最後一個問題嗎?這裏有一個例子jsfiddle.net/o3p51bct/2/。如何隱藏div,以便隱藏它的所有內容。我是否正確編寫了傳輸id的Ajax請求,在控制檯中由於某種原因未被傳輸。 –