2013-08-09 3 views
1

Мне нужно удалить div (# pop1), нажав на тот же div и добавить еще раз, что div, нажав другой div (# pop2), и вам нужно удалить этот div (# pop2).удалить div полностью и добавить снова

Проверьте мой demo

я написал код для удаления DIV, но как добавить его снова.

$(".del").click(function(){ 
    $(this).parent().remove();  
}) 
+0

Используйте '.detach()' вместо '.remove()', сохраняя ссылку в переменной. Используйте ** уникальные ** атрибуты 'id'. Не используйте встроенные обработчики событий. И на самом деле включить jQuery-библиотеку в jsFiddle – Ian

+4

как об использовании '.hide()' и '.show()' скорее, фактически удалив ее? – Spudley

+0

Вы можете помочь с демо. – user2607456

ответ

2

Здесь это [DEMO]. Я привязываю его к классу .player, так как класс del слишком мал. Вы можете изменить это соответственно!

$(".player").bind('click', function(){ 
    $('.player').show(); 
    $(this).hide();  
}) 
0

Как один из Закомментируйте по предложению использовать .hide() и .show(), если вы хотите, чтобы скрыть и показать div

Но, если вы хотите remove в div затем прикрепить его позже, использовать глобальную переменную сохранить div

var $div=$(".del"); \\ the global variable

затем перед его удалением с помощью .remove() код добавить $div=$(".del").

и после этого вы можете использовать его, чтобы прикрепить div к родительскому элементу по $("#parentDiv").append($div)

PS: не может получить доступ к скрипке в моей сети в настоящее время, так что не может опубликовать обновленную скрипку

0

Это может быть то, что вы после:

<script type="text/javascript"> 
$(function(){ 
var cached = null; 

$(".del").click(function(){ 
    if(cached != null){ 
    $('body').prepend(cached); 
    } 
    cached = $(this).parent().detach(); 
}) 
}); 
</script> 

Примечания: Снимайте клики обработчиков, которые вы написали рядные:

<a class="del" href='#' onclick="remove('rem')" ><div id="pop3"></div></a>