我已经阅读了许多关于 SO 的类似问题,例如, 在调用 event.preventDefault() 后是否有[通用] 方法来调用默认操作?,但是在这种情况下,我不希望阻止默认事件,而是希望在默认事件开始后运行一些附加代码作为回调。
这可能吗?一位同事使用了一个值为 1 的超时,推测在当前事件循环中,默认事件将开始运行,而在下一个循环中,将运行定时事件。SO对此有何看法?
我已经阅读了许多关于 SO 的类似问题,例如, 在调用 event.preventDefault() 后是否有[通用] 方法来调用默认操作?,但是在这种情况下,我不希望阻止默认事件,而是希望在默认事件开始后运行一些附加代码作为回调。
这可能吗?一位同事使用了一个值为 1 的超时,推测在当前事件循环中,默认事件将开始运行,而在下一个循环中,将运行定时事件。SO对此有何看法?
如果您想在默认事件完成后运行代码,那么setTimeout
就是要走的路。
setTimeout(function(){}, 0)
0ms 的值应该将此函数推入堆栈底部,因此它将在事件完成后运行。
看看这个答案以获得更好的解释:https ://stackoverflow.com/a/779785/206403