我有一个js
文件,其中包含以下代码:
function submitForm() {
//......
window.open('/projectA/spring_controller1',"_blank");
window.location = '/projectA/spring_controller2';
}
在大多数情况下(约99%),window.open
有效。
但是有时(大约1%)在chrome 73中没有打开任何新标签页(在这种情况下,我确定已调用函数submitForm
,因为window.location
有效,只有{{ 1}}失败。)。
在chrome中,当我首次执行此功能时,window.open
未打开新标签,而window.open
将当前标签重定向到新页面成功。当我第二次运行此功能时,window.location
仍然不起作用。但是,它可以在随后的执行中打开一个新选项卡。
升级Chrome后,window.open
无法打开新标签,window.open
会在第一次工作,但会在随后的执行中工作。
似乎最初在chrome中调用此函数(在当前版本中首次调用或升级到新版本)时,window.location
无法打开新标签,而之后它可以打开。
答案 0 :(得分:1)
请检查是否有任何弹出式窗口插件或广告拦截器插件导致此问题,否则您的代码在进入window.open代码行之前会遇到一些错误。如果是chrome,请按F12键并转到调试器选项,您也许可以看到在代码进入window.open代码行之前发生的任何错误。
希望它会有所帮助。:-)