我不确切知道这种症状的原因但是这里有。在我们的网络应用程序中,我们调用window.open
打开一个新窗口/选项卡(内部每个人都设置为在新选项卡中打开)。打开此新选项卡后,IE8立即将焦点切换到它。
然后我们集成了一个Web服务,所以我们称这个Web服务在返回时调用一个回调javascript函数。我们现在从回调函数内部调用window.open
。当我们这样做时,IE8打开新选项卡但不切换焦点。在父页面上调用window.focus
,子页面不执行任何操作。
现在,我知道javascript没有线程化,但这与异步性有关吗?有没有办法让浏览器按预期运行?
答案 0 :(得分:2)
我相信默认情况下,IE只会在用户启动的操作(如点击)打开时将焦点切换到新选项卡。如果window.open
调用不响应UI操作,则IE可能在后台打开选项卡,就好像它是某种弹出窗口一样,但显然它没有被弹出窗口阻止程序阻止。
如果您在Intranet环境中并且可以指定设置,是否尝试在选项卡式浏览设置对话框中设置“始终切换到创建新选项卡”复选框?