我正在使用此代码重定向到新标签:
<script type="text/javascript">window.open('http://example.com');</script>
但是当我在谷歌浏览器中运行时,它显示“POPUP BLOCKED”,它仍然在页面上。 那么如何通过添加javascript来阻止谷歌浏览器显示阻止弹出窗口。 我可以从我的计算机上停止这个,因为Chrome中有一个选项“ALWAYS ALLOW”,但如果我发布它,那么每个观众都不能这样做。
答案 0 :(得分:3)
你不能&#34;停止&#34; Chrome就是这样做的,这就是弹出窗口拦截器的重点 实际上,你不应该首先尝试创建弹出窗口,人们会讨厌你。
新的标签页或窗口只应在用户操作后打开(其他所有内容正确地被阻止),因此最好的方法是创建一个简单的链接({{1 } {}与<a>
。
但是,如果我没有弄错的话,如果有问题的代码是从target="_blank"
事件处理程序的上下文(以及其他一些事件处理器)运行的,那么实际上你可以在大多数浏览器中创建弹出窗口,例如{如果事件是用户事件(而不是脚本调度的事件),则{1}},但不是click
之类的事物。)
因此,如果链接真的不够,请尝试类似
dblclick
这当然只有在用户点击该元素时才有效,但我可以向您保证,如果他们没有点击它,他们就不希望看到弹出窗口。
演示:Fiddle。
答案 1 :(得分:0)
它被阻止,因为它是非用户启动的弹出窗口。没有办法解决我所知道的问题,也不应该。
为什么你想打开一个弹出窗口,你还能做出哪些其他选择仍能达到你的目标?