如何防止标签打开延迟,以便在单window.open
之后立即重新获得控制权?
是否有可用的异步window.open
指令/功能?
否则,如何使用Javascript模拟 Ctrl +单击行为?
......鉴于以下背景......
我有一个导航栏,其中包含许多指向应用程序不同部分的链接
其中一位大老板说:«当我点击其中许多链接时,应用程序没有响应»
这基本上意味着他不断点击这些链接,然后突然打开太多标签。
导航栏包含点击时触发以下指令的链接:window.open(LINK_ADDRESS_HERE, "_blank")
我注意到,如果让我们说这些链接中的6个在两秒钟内被点击,相关的标签会在我点击它们时打开。但是单击10个不同的(导航栏)链接会导致标签打开延迟,突然之间,预期的标签最终会打开,但它们需要3秒或更长时间才能打开。
我怀疑用户同时运行了太多点击,浏览器可能无法处理此问题 另一方面 Ctrl +单击几个链接(因此它们在每个新标签中打开)在一些随机网站上,如 StackOverflow ,根本不会打扰浏览器并且标签打开没有延迟。
在我看来,问题必须来自我的应用程序的JavaScript代码或window.open
的工作方式
单击仅少量链接时,选项卡成功打开。但是如果我在已经加载的第一组链接之后单击了很多,那么这可能是应用程序很慢并且加载新选项卡需要更长时间,或者打开仍然加载的选项卡消耗可用的浏览器容忍单个域/应用程序的连接(我认为这类似于HTTP 1.1中的6个连接),因此当对window.open
进行新的调用时,它们只是等待释放连接槽。作为suche,我认为缓慢打开标签是由于window.open
等待可用连接。
谢谢。