Javascript 我正在尝试做一个chrome扩展来打开一个标签,然后运行一个URL列表,在每个标签加载时按顺序打开下一个

Javascript 我正在尝试做一个chrome扩展来打开一个标签,然后运行一个URL列表,在每个标签加载时按顺序打开下一个,javascript,google-chrome,time,google-chrome-extension,Javascript,Google Chrome,Time,Google Chrome Extension,我没有太多的正式编程知识,我从来没有参加过课程,到目前为止,我做的所有项目都是简单地执行代码,我把它们拼凑在一起,直到成功为止。我想我将能够自己编写代码,所以我主要在这里寻求逻辑/结构帮助 这里有一个问题:我想做一个chrome扩展,它将打开a页,等待它完全加载+2秒,然后重定向到B页,等待它完全加载+2秒,然后重定向到C页,等等。用户在运行时只需点击AFK即可。我希望这个列表有几百个URL,我如何构造它,这样我就不会有300个函数将URL属性更新到下一个URL 我有两个想法 create ta

我没有太多的正式编程知识,我从来没有参加过课程,到目前为止,我做的所有项目都是简单地执行代码,我把它们拼凑在一起,直到成功为止。我想我将能够自己编写代码,所以我主要在这里寻求逻辑/结构帮助

这里有一个问题:我想做一个chrome扩展,它将打开a页,等待它完全加载+2秒,然后重定向到B页,等待它完全加载+2秒,然后重定向到C页,等等。用户在运行时只需点击AFK即可。我希望这个列表有几百个URL,我如何构造它,这样我就不会有300个函数将URL属性更新到下一个URL

我有两个想法

create tab as the selected tab with URL A
onLoad wait for 2 additional seconds then update URL A to URL B
onLoad wait for 2 additional seconds of URL B update URL B to URL C
Repeat for the rest of the URLs

我知道javascript有一些奇怪的同步/异步功能,包括执行函数和时间限制,我不完全确定它是如何工作的。如果您能提供一些信息,说明我需要做些什么才能使这段代码正常工作,或者什么方法是更好的做法,我将不胜感激


谢谢大家!

用作基础。在您的情况下,第二个
wait gotour…..
将是
wait new Promise(r=>setTimeout(r,2000))
,您将不需要该代码进行报告。@wOxxOm,感谢您为我指出这个答案!它看起来非常有用,但由于我对javascript非常不熟悉,所以很难理解每个部分的作用。你能解释一下
loopLink
tab.url.slice
做什么,以及
gotour
如何与
下载报告
交互吗?对不起,我知道这太多了,我只是想弄清楚这是怎么回事。
have 'file' in extension folder with a list of all URLs
create tab as the selected tab
update URL to 1st URL in 'file'
onLoad wait for 2 additional seconds then update to 2nd URL in 'file'
onLoad wait for 2 additional seconds then update to 3rd URL in 'file'
Repeat for the rest of the URLs