2011-11-02 2 views
0

'a'リンクがHTML要素に追加されると、応答しなくなるようです。.appendToが適用された後、リンクが機能を失う

http://jsfiddle.net/establish/Aqfrf/

HTML

<div class='tag-holder'> 
    <span class='tag'><a href='#' class='tag-value'>Design</a></span> 
</div> 

<div class='tag-tray'> 
</div> 

jQueryの

$(".tag-value").click(function() { 
    $(this).parent().fadeOut("slow", function() { 
    $(this).append('<a href="#" class="tag-delete">x</a>').appendTo(".tag-tray").fadeIn("slow");  
    }) 
}); 

$(".tag-delete").click(function() { 
    alert("This will be displayed only once."); 
}); 
+0

私はあなたの中に 'タグtray'が表示されませんどこのマークアップ...? –

+0

これは正しくインデントされていないため、表示されませんでした。今修正されました。 –

答えて

2

を使用する必要があり、その中にDOMに動的に要素を追加しているある理由:

$(".tag-value").live('click', function() { // ... 
1

代わりにこれを試してみてください

$(".tag-delete").delegate('div.tag-holder','click',function()... 
0

$(".tag-delete").click(function()... 

を交換してください:ここで

$("<a>x</a>").attr({ "href" : "#", "class" : "tag-delete" }).appendTo(".tag-tray"); 

がjsFiddleです:http://jsfiddle.net/X6Ksp/2/

関連する問題