gpt4 book ai didi

javascript - 单击链接时 IE 会一次又一次弹出,而不是显示在同一屏幕中

转载 作者:行者123 更新时间:2023-12-03 12:18:23 25 4
gpt4 key购买 nike

当我单击应用程序标题中的链接时,它应该打开一个弹出屏幕,但是当我单击其他页面中的同一链接时,它会在另一个弹出窗口中打开,即使我没有关闭之前的弹出窗口。此问题仅在 IE 中存在,其他浏览器中不存在。

function popUpForInvoice(url) 
{
var csrfName = document.getElementById("csrf").getAttribute("name");
var csrfToken = document.getElementById("csrf").value;
var newUrl = "/ecommerce/mitac/" + url + "&"+ csrfName + "=" + csrfToken;
var left = (screen.width/2)-(550/2);
var top = (screen.height/2)-(550/2);
var ua = window.navigator.userAgent;
var msie = ua.indexOf("MSIE");
if (msie > 0)
window.open(newUrl,'_blank','toolbar=0,scrollbars=yes,location=0,statusbar=0,menubar=0,resizable=no,width=540,height=600,left ='+left+',top ='+top+'');
else
window.open(newUrl,'about:blank','toolbar=0,scrollbars=yes,location=0,statusbar=0,menubar=0,resizable=no,width=540,height=600,left ='+left+',top ='+top+'');
}

最佳答案

  1. _blank 因为目标被设计为每次打开一个新窗口
  2. about:blank 不是有效目标 - 使用 mywindow 之类的内容来重用
  3. 不需要代理测试,无论如何,代理测试在 IE11 中都会失败。
  4. 您的某些参数不是必需的,参数中不允许有空格

这应该有效

删除

var  ua = window.navigator.userAgent;
var msie = ua.indexOf("MSIE");
if (msie > 0)
window.open(newUrl,'_blank','toolbar=0,scrollbars=yes,location=0,statusbar=0,menubar=0,resizable=no,width=540,height=600,left ='+left+',top ='+top+'');
else

只要有

window.open(newUrl,'mywindow',
'scrollbars,resizable=no,width=540,height=600,left='+left+',top='+top);

请注意,您可能需要将窗口聚焦,否则在第二次及后续次打开时它将保持在下方

关于javascript - 单击链接时 IE 会一次又一次弹出,而不是显示在同一屏幕中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24567749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com