javascript - 双击从 Canvas 中删除图像

标签 javascript jquery canvas drag-and-drop kineticjs

我将图像从工具栏拖放到 Canvas 上,然后在 Canvas 中移动它。目前,我可以从工具栏多次将单个图像加载到 Canvas 上,如下面的链接所示.

http://jsfiddle.net/gkefk/22/

我想添加当用户双击特定图像时从 Canvas 中删除该图像的特定副本的功能。为此,我在双击时触发 jQuery 事件。

$("#image").dblclick(function(){
layer.remove();
});

即使我双击图像的特定副本,该特定副本也不会从 Canvas 中删除。我不明白我做错了什么。请帮助

包含 jQuery 事件的 fiddle 的链接

http://jsfiddle.net/gkefk/23/

最佳答案

更新了你的 fiddle 以使其正常工作:

image.on('dblclick', function() {
    image.remove();
    layer.draw();
});

http://jsfiddle.net/gkefk/26/

您必须向图像的每个副本添加一个事件处理程序,而不是信任 jQuery 来动态执行此操作。

您的 jQuery 调用在文档加载时完成一次(同时不存在 id 为“image”的元素),之后没有任何效果。另请记住,在多个动态元素上使用静态 ID 并不是一个好主意,因为 ID 必须是唯一的。

关于javascript - 双击从 Canvas 中删除图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25029771/

相关文章:

javascript - 使用拖动事件在 Canvas 上的图像上绘制矩形

javascript - 如果输入特殊文本,则删除文本区域中的值

javascript - 使用 javascript 验证 Ajax 组合框

javascript - 如何突出显示 HTML5 表格中选定/单击的单元格

javascript - 如何保存和删除 Canvas 状态?

javascript - 在 Canvas 中绘制文本

javascript - 检查一条线和一个网格是否在 three.js 中相交

javascript - JS curry 递归处理空参数

javascript - 如何在 JS 中的表内定位没有类的内容

javascript - 根据先前的响应隐藏 Qualtrics 项目 - Javascript