Javascript 在克隆的元素中显示上下文菜单

Javascript 在克隆的元素中显示上下文菜单,javascript,jquery,contextmenu,clone,Javascript,Jquery,Contextmenu,Clone,我创建了一个contextmenu来显示特定的类,但是当我用该类克隆元素时,contextmenu不会显示 显示上下文菜单: // Trigger action when the contexmenu is about to be shown $(".ui-editable").bind("contextmenu", function (event) { // Avoid the real one event.preventDefault();

我创建了一个
contextmenu
来显示特定的类,但是当我用该类克隆元素时,
contextmenu
不会显示

显示上下文菜单:

// Trigger action when the contexmenu is about to be shown
$(".ui-editable").bind("contextmenu", function (event) {
  // Avoid the real one
  event.preventDefault();
  //Save the selected and the parent element 
  selected_area = $(this);
  parent_area = $(this).parent();    

  $(this).addClass('selected-menu')// Show contextmenu

  $("#editContextMenu").finish().toggle(100).

  // In the right position (the mouse)
  css({
    top: event.pageY + "px",
    left: event.pageX + "px"
  });

});
克隆元素:

function cloneBlock() {

  $(selected_area).clone().appendTo(parent_area);

}
完整示例如下: jQuery还有一个附加参数

带有数据和事件(默认值:false)
类型:布尔值
一个布尔值,指示是否应将事件处理程序与元素一起复制

因此,您可以将代码更新为:

$(selected_area).clone(true).appendTo(parent_area);
更新小提琴:


另一种方法是使用事件委派,因此无论何时/如何创建HTML,请更改:

$(".ui-editable").bind("contextmenu", function...

更新小提琴:

$(document).on("contextmenu", ".ui-editable", function...