Javascript Firefox扩展的线程行为是否可能?

Javascript Firefox扩展的线程行为是否可能?,javascript,multithreading,firefox,Javascript,Multithreading,Firefox,Firefox扩展的线程行为可能吗 我的意思是在每个Firefox标签上运行一个“线程” 刚刚完成了一个扩展,它对Firefox窗口中的一个页面做了一些事情,但是我发现如果我想在每个选项卡中运行扩展逻辑,那么需要进行一些重大的重组才能使扩展正常工作 我想,除了跟踪每个选项卡的上下文之外,我还必须以循环的方式安排每个选项卡内容的处理,这样,一旦我暂停处理一个选项卡并转到另一个选项卡,当我再次返回时,上一个选项卡的上下文就会被保存 是的,我必须把我的扩展变成一个进程调度器 我宁愿把这项工作转移到Fi

Firefox扩展的线程行为可能吗

我的意思是在每个Firefox标签上运行一个“线程”

刚刚完成了一个扩展,它对Firefox窗口中的一个页面做了一些事情,但是我发现如果我想在每个选项卡中运行扩展逻辑,那么需要进行一些重大的重组才能使扩展正常工作

我想,除了跟踪每个选项卡的上下文之外,我还必须以循环的方式安排每个选项卡内容的处理,这样,一旦我暂停处理一个选项卡并转到另一个选项卡,当我再次返回时,上一个选项卡的上下文就会被保存

是的,我必须把我的扩展变成一个进程调度器

我宁愿把这项工作转移到Firefox或操作系统上

虽然我可以为我处理的每个页面生成一个新窗口,以便扩展只能在单个页面上工作,但我宁愿使用选项卡

虽然我已经开始编写GM脚本,这样我就可以免费获得“线程”,但我想知道是否有人有更好的想法


类似于为创建的每个选项卡从扩展派生一个线程,以便每个线程都本地化并专用于每个选项卡?

对不起,我以前的回答是错误的(因为我很久以前就为Firefox 2开发了扩展)。现在看来可以在扩展中使用Javascript线程了:

但是从线程访问DOM或UI是不安全的


此外,您不需要线程来访问多个选项卡。所有选项卡都等同于Firefox扩展。

关键是在所有选项卡中同时执行完全相同的处理,这取决于。您可以将事件处理程序附加到选项卡(例如,在选项卡中加载文档时触发),也可以使用生成器实现协同路由: