gpt4 book ai didi

javascript - 多次触发时运行一次 js 函数

转载 作者:行者123 更新时间:2023-11-30 10:43:29 31 4
gpt4 key购买 nike

我有一个 Div,它使用 jQuery 通过 javascript 函数加载文件/内容..

function DoWork() {
// Do Stuff
}

假设用户可以重新加载 Div 并使用相同的 js 函数 DoWork() 提取相同的文件/内容。问题是,当文件重新加载时,之前加载的函数 DoWork() 仍在运行。我怎样才能杀死之前触发的 DoWork() 并重新启动它?

最佳答案

Javascript 是单线程的,这意味着在给定时刻只能执行一件事。如果 DoWork 已经在“运行”,它要么是 a) 阻塞所有其他 JS 代码,你别无选择只能让它完成,因为在它自己完成之前你无法执行任何中断代码,或 b) DoWork 计划通过 setTimeout()setInterval() 在一个时间间隔内触发。

如果是后一种情况,setTimeout()setInterval() 返回一个ID。将该 ID 存储在某处并根据您的启动方式调用 clearTimeout(doWork_timeout_id)clearInterval(doWork_interval_id)

关于javascript - 多次触发时运行一次 js 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9742815/

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