我正在尝试在单击时将 div 和 span 添加到图像中,然后在单击 span 时将其删除。
<div id="gallery" align="center">
<img src="http://www.frontpagejunky.com/wp-content/uploads/2011/05.jpg" class="img-view" width="150px" height="150px" />
</div>
jQuery:
$(document).ready(function(){
$('.img-view').click(function(){
var img=$(this).after('<span id="close">X Close</span>').wrap("<div id='pop-up' style='display:block'/>").clone();
$('#gallery').append(img);
});
$('#close').live("click",function(){
$('#pop-up').remove();
$('#close').remove();
});
});
</script>
我遇到的问题是跨度没有被包裹在 div 中,而只有图像被包裹,并且跨度仅在图像被包裹后附加。第二个问题是当我单击#close 时,div 和按钮消失,但是当我再次单击 .img-view 时,它们不会重新生成/重新出现。为什么会这样?
更新
$(document).ready(function(){
$('.img-view').click(function(){
var img=$(this).clone();
img= img.after('<span class="close">X Close</span>');
img=img.wrap("<div class='pop-up' style='display:block'/>");
$('#gallery').append(img);
});
$('.close').live("click",function(){
$('.pop-up').remove();
$('.close').remove();
});
});
但是现在弹出的 div 没有包装图像元素!?!