目前只发现这两个可以阻塞一会线程,然后还能顺利让前面还未来得及生效的内容执行完。
如果想模拟有没有好方法?
原谅我运用场景不方便说= =。
目前只发现这两个可以阻塞一会线程,然后还能顺利让前面还未来得及生效的内容执行完。
如果想模拟有没有好方法?
原谅我运用场景不方便说= =。
|
yamedieJun 9, 2019 via Android
1
好像是各家浏览器自己的内部实现。
用 async/await 可以模拟? |
|
rabbbitJun 9, 2019
3
async await + setTimeout
|
|
murmurJun 9, 2019
5
这个阻塞不是简单的 async 你就不要想着完美实现了 能用 es3 语法实现的阻塞想想都神奇
|
|
setSweetChildJun 9, 2019 via Android
7
js 是单线程的,但浏览器不是啊。阻塞一个标签页应该是在 js 之外的浏览器层面做的
|
|
8
@setSweetChild
是的呀,比如 360 浏览器就会标记页面之后跳转到安全提示。 |
|
yixiangJun 9, 2019
9
XMLHttpRequest 有同步模式。
然而,干嘛要阻塞,应该可以有不用阻塞达到目的的方法。比如,setTimeout, setImmediate, requestAnimationFrame |
|
shakarakaJun 9, 2019
12
|
|
yamedieJun 9, 2019 via Android
14
脱离场景空谈实现,有点难
|
|
orzorzorzorzJun 9, 2019
15
问问看能不能让客户换上 chrome 装上扩展,这个应该只能从外部来了
|
|
16
|
|
17
alert 不是 js 的方法,是浏览器的。
你写的 js 跑在浏览器里,而浏览器本身也有代码来组成浏览器本身这容器。alert 到底还是调用了浏览器注入的方法,具体如何实现,得去找找人家开源的代码了。 要实现这个,你得让用户用你定制的浏览器,常见的是弄个客户端了。 |
|
18
@orzorzorzorz
受教了,感谢。 |
|
liuzhiyongJun 9, 2019
19
@yixiang 你这个是正确答案。
|
|
liuzhiyongJun 9, 2019
20
@cyrbuzz XHR 可以做成阻塞模式的。
|
|
zhw2590582Jun 10, 2019 via iPhone
21
浏览器自己实现的接口,没什么特殊的
|