Javascript 克隆/附加会影响错误的图像或所有图像

标签 javascript jquery html

我有一个非常基本的功能,可以根据搜索输入获取图像结果集

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

最佳答案

尝试 .closest()$(this) 上仅定位当前点击的图像:

var img = $(this).closets(".getImage").children("img").clone();

您当前的 HTML 表明您只有一个要克隆的图像元素。在这种情况下找 child 是没有意义的。简单地克隆 $(this) 就足够了:

var img = $(this).clone();

关于Javascript 克隆/附加会影响错误的图像或所有图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55272395/

相关文章:

javascript - ReactJS 删除动态元素

javascript - 是否有任何标准的 extjs 方法来查找所选节点的可见根?

Javascript/jQuery 添加点击类不适用于圆形 div

javascript - 编辑输入类型时如何更改值属性?

javascript - jqTransform Select - Ajax 更新?

html - 为什么我的 DIV 从页面上掉下来

javascript - Javascript左侧和顶部导航事件状态

javascript - 来自sql数据库的数据不会在EJS页面上呈现,除非它处于循环中(使用node,express,ejs,mysql)

javascript - 如何异步运行 useState

javascript - 使用 javascript 自定义 href