【问题标题】:Internet Explorer Opening Same Page for Different URLs of same websiteInternet Explorer 为同一网站的不同 URL 打开同一页面
【发布时间】:2015-03-03 16:54:43
【问题描述】:

我有一个应用程序,我在 Internet Explorer(8,10,11) 中使用 window.open(myurl) 做新的标签弹出窗口 由网站触发的弹出窗口包含一个 URL,该 URL 是该网站的另一个页面。这里的问题是,当弹出窗口发生时,打开的网页与启动弹出窗口的网页相同。 如果我从弹出窗口的地址栏中复制 URL 并关闭所有窗口,然后在 Internet Explorer 的新窗口中打开该 URL,则仅在弹出窗口/选项卡中打开所需的页面。 (注意:相同的应用程序在 Mozila Firefox 中运行良好,没有任何问题,但客户要求在 IE 中运行我的应用程序) 以下是弹出的方法:

function handlePhonecallScreenpop(callF, callT, callA, custid, entityN) {

    var extraqs = "cf=" + callF;
    extraqs += "&ct=" + callT;
    extraqs += "&cd=outd";
    extraqs += "&ca=" + callA;
    extraqs += "&cid=" + custid;
    extraqs += "&en=" + entityN;

    var url = webUrl() + "/main.aspx?etn=phonecall&pagetype=entityrecord&extraqs=" + encodeURIComponent(extraqs);
    window.open(url, "callpop");
}

【问题讨论】:

  • 看起来你需要显示一些代码。
  • 在原帖中添加。

标签: javascript internet-explorer browser popup browser-cache


【解决方案1】:

我猜你没有设置目标窗口名称。这意味着您为每个window.open() 调用重复使用相同的目标窗口。尝试为每个调用添加一个 arg:

window.open('firsturl', 'windowA');

对比

window.open('secondurl', 'windowB');

您应该看到两个不同的窗口。

【讨论】:

  • @pointer 是的 - 你总是以相同的窗口名称为目标。尝试删除 window.open(url, "callpop"); 的第二个参数,或针对不同类型的弹出窗口使其不同。
  • 它是 IE 特有的吗?因为我的弹出窗口在 Firefox 中完美运行
  • @pointer FF 可能与选项卡实现有不同的业务逻辑。在你的情况下,听起来它的行为不同,但是mozilla supports the window name argument.
【解决方案2】:

如果您将名称更改为 _blank,它应该始终在新窗口中打开。

window.open(url, "_blank");

【讨论】:

  • 谢谢,我试过了,结果还是一样。
猜你喜欢
  • 1970-01-01
  • 2017-04-08
  • 1970-01-01
  • 2020-09-28
  • 2014-01-25
  • 1970-01-01
  • 2011-12-25
  • 1970-01-01
  • 2013-04-07
相关资源
最近更新 更多