小编pat*_*ick的帖子

克隆后jQuery触发器不会触发

我的代码中有一个div,当我克隆它时,不会直接触发事件.这是代码;

<div id="draggable" onclick="alert(1);" class="ui-widget-content drag">
    <p>Drag me to my target</p>
</div>
<div id="here">
</div>

<script type="text/javascript">
    $("#draggable").clone().removeAttr("id").attr('id', 'draggable2').appendTo("#here");
    $("#draggable2").trigger('onclick');
</script>
Run Code Online (Sandbox Code Playgroud)

当我然后单击克隆元素时,它将正常触发事件.

如果我更改脚本让原始元素触发它也可以正常工作:

<script type="text/javascript">
    $("#draggable").clone().removeAttr("id").attr('id', 'draggable2').appendTo("#here");
    $("#draggable").trigger('onclick');
</script>
Run Code Online (Sandbox Code Playgroud)

绑定函数也可以正常工作:

<script type="text/javascript">
    $("#draggable").clone().removeAttr("id").attr('id', 'draggable2').appendTo("#here");
    $("#draggable2").bind('click', function () { alert('2'); });
    $("#draggable2").trigger('click');
</script>
Run Code Online (Sandbox Code Playgroud)

有没有人知道如何在克隆后直接触发克隆元素的"标准"onclick.

javascript jquery triggers clone

4
推荐指数
1
解决办法
4204
查看次数

标签 统计

clone ×1

javascript ×1

jquery ×1

triggers ×1