gpt4 book ai didi

javascript - jQuery 触发器在克隆后不触发

转载 作者:搜寻专家 更新时间:2023-11-01 04:45:18 25 4
gpt4 key购买 nike

我的代码中有一个 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>

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

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

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

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

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

有人知道如何在克隆后直接触发克隆元素的“标准”onclick。

最佳答案

为了克隆一个元素及其事件,您必须将“true”作为第一个参数传递。要传递其子项的事件,您还必须传递“true”作为其第二个参数。`

$myClone = $('#element').clone( true, true );

http://api.jquery.com/clone/

关于javascript - jQuery 触发器在克隆后不触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9386436/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com