双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

如何blocking一个函数,不让它返回?

深夜航船 深夜航船 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
初学javascript,在设计chrome插件时遇到一个问题,找了一些资料,也尝试过一些方法,目前不知道如何继续,问题描述如下:

为某个事件添加一个listener, 如何将listener中的回调函数blocking住不让返回,直到点击某个按钮(比如forward按钮),回调函数才会返回,试了几种方法:

1.
while(1)
{
if(forward == 1)
break;
}

结果就是浏览器直接卡死,没有任何悬念。
2.
setInterval(function(){
if(go_forward) {
go_forward = 0;
return {requestHeaders: details.requestHeaders};
}
}, 0);
虽然指定了时间间隔为0,但是函数依然返回了,没有任何作用。

javascript或者其他的javascript库有没有提供这种blocking的支持?
如果没有现成的支持,如何自己用javascript写一个模拟这种bloking的函数?比如模拟alert或者confirm弹出框,如果不点击【确定】,那么就会阻塞在当前的指令上,但是又不会卡死?这种情况改如何实现?


...全文
评论 18
收藏 已收藏
分享
返回顶部
深夜航船
JavaScript 87,983 成员 224,681 内容