在 Firefox Addon(JavaScript)上按顺序和定期执行事件

问题描述 投票:0回答:0

我正在制作在 Firefox 插件上运行的顺序和周期性链接开启程序。

我用PYQT实现了这个想法。我制作了一个无限循环线程和 URL 队列。
线程无限检查队列是否为空,如果队列中有元素,则每个元素依次发出,周期为 5 秒。 让我展示简化的代码:

if __name__ == '__main__':    
    que = Queue()
    thread1 = threading.Thread( target=pop, args=(que, ) )
    thread1.daemon = True
    thread1.start()

def pop(q):
    while True:
        toOpenURL = q.get()
        if toOpenURL:
            webbrowser.get("firefox").open(toOpenURL)
            time.sleep(5)

def onClick(URL):
    que.put( someDownLinkURL ) 

我在后台脚本中尝试了工人,工人似乎成功了,但据我所知,工人不工作。
(Worker 对象显示在控制台,但 console.log 函数在 worker.js 中不起作用) 有没有办法只在 background-script.js 中制作 anytime-IN 和 periodic-OUT 队列?

我尝试在 browser.pageAction.onClicked.addlistener 中添加调用 async-await 函数,但是当 onClicked 事件调用 addlistener 时,每个函数都被独立调用(并创建新的)

javascript firefox-addon
© www.soinside.com 2019 - 2024. All rights reserved.