2013-06-14 22 views
8

Also muss ich Inhalt von einer bestimmten Klasse greifen und es in ein Div setzen, das ich append für ... benutze, dass append das Element, das ich anhänge, entfernt, und ich brauche es, um dort zu bleiben , Hier ist mein Code:Jquery anhängen ohne zu entfernen

$(document).ready(function(){ 
    var $content = $('#popupcontent'); 
    var $window = $('#popupwindow'); 
    $('.open').click(function(){ 
     //alert('runnning'); 
     var a = $(this).contents('span'); 
     $content.append(a); 
     $window.fadeIn(300); 
    }); 
    $('.close').click(function(){ 
     //alert('running'); 
      var a = $content.contents('span'); 
     $window.fadeOut(300); 
     $('#popupcontent span').remove(); 
    }); 
}); 

wie kann ich den Inhalt erhalten, wenn darauf geklickt wird, von jedem .open span zum #popupcontents id ohne es aus der .open Klasse zu entfernen?

Ihnen zu zeigen, was ich meine: JSFIDDLE

Hinweis: Sie das zweite Mal auf einen Link klicken, fügen Sie es gewohnt, jeden Inhalt, da diese Inhalte entfernt von dieser Klasse hat, was nicht, was ich wollen

ist

HINWEIS2: Ich kann nicht einfach append anstelle von remove in der $('.close').click Funktion, weil ich nicht feststellen kann, welche Instanz der .open Klasse der Inhalt kam.

+0

Clone – mplungjan

Antwort

22

Sie müssen das Element und fügen Sie den Klon klonen:

$('.open').click(function(){ 
    //alert('runnning'); 
    var a = $(this).contents('span'); 
    $content.append(a.clone()); 
    $window.fadeIn(300); 
}); 

Demo

+0

Perfekt ist eine Option !!! Vielen Dank. –

+0

Warum fügen Sie das nicht als richtige Antwort hinzu? – stefanz

+0

Vielleicht, weil ich für ein bisschen von meinem Computer weg musste ... –

Verwandte Themen