0

我正在用 javascript 制作增量游戏,所以我一直在替换页面中的一些链接,这些链接表现出非常奇怪的行为。我用 .on( 附加点击事件,有时点击事件被触发,有时不触发,这是非常随机的。 是行为的一个明显例子。我可以想象这与时间间隔有关,因为如果我将间隔设置为 1000 毫秒,则始终触发事件。当然,我可以在代码中进行一些更改,以便不替换链接而只更新它,但我想知道这是否可以先修复.

HTML:

<div id="container"><a id="link" href="#">test</a></div>

JS:

$(document).ready(function(){
$("#container").on("click","#link",function(){
    alert("clicked");
});
setInterval(function(){
    var newA = $("#link").clone();
    $("#link").remove();
    $("#container").append(newA);
},100);});

jsFiddle 中的示例:http: //jsfiddle.net/MtR6b/1/

谢谢!!

4

1 回答 1

2

您的setInterval代码非常快100 ms,这就是为什么当事件即将触发元素时是replaced新的,所以click event不是triggered

试试你会看到的clicking链接。 many timesalert


DEMO with 1000ms=1s setInterval

于 2013-11-11T15:55:14.663 回答