我有一个非常基本的函数,可以根据搜索输入获取图像的结果集
function appendSomeItems(url, id, name, style) {
return '<div><div class="md-card md-card-hover"><div class="gallery_grid_item md-card-content getImage"> <img class ="uk-align-center imageClick"></a><div class="gallery_grid_image_caption"> <span class="gallery_image_title uk-text-truncate">' + name + '</span> <span>' + style + '</span> </div></div></div></div>';
}
这可以很好地工作,并且在另一个函数中调用它,该函数基本上从结果集中获取最多10个图像,并将它们附加到div中。
我有另一个函数,我点击一个图像,我想要克隆那个特定的图像并附加到另一个div中。问题是,它使用类imageClick克隆所有图像并将其附加到新的div。如果我将imageClick更改为ID,那么它只克隆/附加集合中的第一个。
如何将其更改为仅克隆并附加单击的图像?
$(document).on('click', '.imageClick', function handleImage() {
console.log('good');
var img = $(".getImage").children("img").clone();
$("#holdImage").append(img);
});
发布于 2019-03-21 09:16:41
在$(this)
上尝试.closest()
,以仅针对当前单击的图像:
var img = $(this).closets(".getImage").children("img").clone();
您当前的HTML表明您只有一个要克隆的图像元素。在这种情况下,寻找孩子是没有意义的。简单地克隆$(this)
就足够了:
var img = $(this).clone();
发布于 2019-03-21 09:18:34
使用closest
var img = $(this).closest(".getImage").children("img").clone(true);
https://stackoverflow.com/questions/55272395
复制相似问题