11

所以我需要从特定类中获取内容并将其放入一个 div 中,我使用 append 来......我的问题是 append 删除了我附加的项目,我需要它留在那里,这是我的代码:

$(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();
    });
});

那么如何在单击时从每个.open span#popupcontentsid 获取内容而不将其从.open类中删除?

向您展示我的意思:JSFIDDLE

注意:第二次单击链接时,它不会附加任何内容,因为该内容已从该类中删除,这不是我想要的

注意2:我不能简单地append代替函数remove$('.close').click因为我无法检测.open到内容来自哪个类的实例。

4

1 回答 1

31

您需要克隆元素并附加克隆:

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

演示

于 2013-06-14T04:15:19.770 回答