我需要在按钮的click事件上附加异步行为。 我想让浏览器首先打开带有链接的新选项卡,当我返回上一页时,执行异步操作。
首先,我对此进行了测试:window.setTimeout(() => action(), 0);
它在Chrome中运行良好,但在Firefox action()
中,在链接打开之前执行。很坏。我不敢相信Firefox管理它就像是一个同步块?
所以我尝试了window.setTimeout(() => action(), 1);
现在有效!
1毫秒是否会产生影响,或者在内部事件循环中是否有解释?
你知道答案吗? (为什么Chrome和Firefox之间的管理方式不同?)