【问题标题】:Can't open new tab in JavaScript why? Do I need HTTPS?为什么 JavaScript 打不开新标签?我需要HTTPS吗?
【发布时间】:2017-07-13 16:53:58
【问题描述】:

当我尝试使用以下方法打开新窗口时:

window.open('url?params','_blank')

它被视为弹出窗口。

尝试这样做:

<a hred='url?params' target='_blank'>Test</a>

同样的结果。

在 Chrome 和 Edge 上进行了测试。

我的网站在浏览器中未标记为“安全”。是否必须将其标记为安全 (HTTPS) 才能打开新窗口?

【问题讨论】:

  • 您想要一个新的标签或窗口?没关系,您应该能够打开一个目标为空白的新窗口。
  • 我不能,它被视为弹出窗口。
  • 我认为window.opentarget='_blank' 应该做同样的事情。如果浏览器的设置设置为打开一个新窗口,则该链接将打开一个新窗口。但是,我认为大多数现代浏览器默认使用新选项卡而不是窗口。默认情况下,新窗口通常被视为弹出窗口,也是浏览器的设置,或由弹出窗口阻止程序控制。

标签: javascript html https


【解决方案1】:

问题不在于您的网站是否安全。

这里的问题是浏览器。它们旨在阻止新选项卡或新窗口作为弹出窗口,如果它们没有受到trusted event 的影响/导致。这意味着用户必须主动点击某处才能打开弹出窗口,或者必须向allow the pop up 提交一些内容。

herehere 的答案应该会给你更好的见解。

【讨论】:

  • 太棒了!谢谢!
  • @BalanNarcis 如果对您有帮助,请将其标记为答案:D
猜你喜欢
  • 1970-01-01
  • 2018-01-23
  • 2019-03-08
  • 2011-01-29
  • 2021-12-11
  • 1970-01-01
  • 1970-01-01
  • 2023-02-21
  • 1970-01-01
相关资源
最近更新 更多