gpt4 book ai didi

javascript - 单击处理程序仅触发一次

转载 作者:行者123 更新时间:2023-12-02 20:12:33 26 4
gpt4 key购买 nike

我有一组链接,我会对其进行迭代并添加点击处理程序。单击每个链接时,都会触发一个 ajax 请求,该请求成功后会创建一个包含响应数据的 div,并将其附加到 DOM。然而,当用户单击关闭(在 div 上)或单击屏幕上的任何其他位置时,新附加的 div(类似于小灯箱的 float div)将被删除。我下面有一个简单的脚本来监视此更改,但单击处理程序仅触发一次,并且直到页面刷新后才起作用。我做错了什么?

var monitorChange = function () {
//Check if div has been appended to the dom and if so continue to monitor it
if ( $('div.justappended').length > 0 )
{
setTimeout(monitorChange,100);
}
else
{
//div has been removed from the dom
alert('div removed');
//...do additional stuff here
}
};

$( 'span.someElements' ).each( function () {
var that = $(this);
$(that).click( monitorChange );
});

最佳答案

据我了解,您希望点击事件仍然可以使用 ajax 生成的代码。在这种情况下,您需要使用 live 命令。 http://api.jquery.com/live/

$('span.someElements').live('click', monitorChange);

关于javascript - 单击处理程序仅触发一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6779775/

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