问题标签 [popup-blocker]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
477 浏览

selenium - Selenium Webdriver 是否绕过浏览器默认的弹出窗口拦截器?

所以我的团队今天遇到了一个奇怪的情况,当手动运行时,我们的一个测试失败了,因为 Firefox 的弹出窗口阻止程序最终阻止了应该打开的窗口。但是当我们运行我们的自动化时,Webdriver 会忽略弹出窗口阻止程序,并且窗口会成功打开。

所以问题是 Webdriver 是否内置了忽略所有默认浏览器弹出窗口阻止程序的内容?我可以禁用它吗?

0 投票
1 回答
391 浏览

javascript - How to prevent Users to use ad blocker on my website?

Hey any one know how to prevent users to use ad blocker on my site.I just want to request them not to use it on my site..

0 投票
0 回答
329 浏览

jsf - 触发浏览器的弹出窗口拦截器,如何避免这种情况?

如何从服务器端启用/禁用浏览器弹出窗口阻止程序?我将 JSF 2.2 与 Oracle ADF 一起使用。我有一个<af:popup>不起作用,并要求用户关闭浏览器中的弹出窗口阻止程序。我需要通过编码来避免这种情况。

0 投票
0 回答
1669 浏览

javascript - 从间隔使用 window.open 时防止弹出窗口阻止程序

我正在处理一些通过单击按钮调用的 js 代码,启动一些可能导致需要打开的窗口的异步操作。为了防止弹出窗口阻止程序,我需要确保 window.open 调用是通过单击按钮完成的。

我一直在玩 setTimeout 和 setInterval 以每 100 毫秒左右检查一次异步操作是否完成,并在需要时打开窗口。

我通过 setInterval n 次调用函数在我的jsfiddle中模拟了这一点,第 n 次调用调用 window.open。

Javascript:

html:

问题是,这只适用于第一次(在 js 代码的第一行 n=1),当 n 设置为 2 或更大时,它在 Firefox 中有效,但在 chrome 中无效。

知道如何在所有现代浏览器中使其工作吗?

0 投票
1 回答
235 浏览

javascript - JavaScript - 弹出阻止程序问题

当我使用 JavaScript 单击较小的图像 (SmallImage.gif) 时,我正在尝试打开较大的图像 (BigImage.png)。这是代码:

HTML

Java脚本

运行这段代码时,Google Chrome 和 Internet Explorer 会调用弹出窗口阻止程序。我正在调用 JS 代码作为直接单击的结果,它不应该调用弹出窗口阻止程序。为什么会发生这种情况,我该如何解决这个问题?

问候。

0 投票
1 回答
2388 浏览

javascript - 如何在新选项卡而不是新窗口中打开 URL

关于如何在新窗口中打开 URL 有很多答案,window.open()但这会打开一个弹出窗口,这不是我需要的。
问题是:许多用户的浏览器设置为阻止弹出窗口。另一方面,许多网站可以在当前窗口中打开新标签页,避免弹出窗口阻止程序启动。

触发弹出窗口拦截器,

在同一选项卡中打开 URL,就像'_blank'被省略一样。

那么问题来了:
有没有办法告诉 Javascript 的行为就像target='_blank'属性包含在普通链接中一样?
换句话说:
如何打开一个新标签,最好使用document.location.href
我强调我不想打开一个新窗口,因为这会激活弹出窗口阻止程序。
我需要在当前窗口中创建一个新选项卡。
同样,提出的任何答案window.open()对我来说都是无用的,所以请不要推荐任何打开新窗口的东西。

0 投票
0 回答
422 浏览

javascript - JS 在新窗口中验证并提交表单

我有一个用 jQuery 验证的表单,如果没有错误,我会提交表单。该表格已target="_blank"在新窗口中打开。

有时新窗口可以正常打开,但有时会被 chrome 中的弹出窗口阻止程序阻止。

我正在使用 JavaScript 提交表单,但了解到需要有一个点击事件,所以它不会被阻止。

我更改了代码,但新窗口仍然有时会被弹出窗口阻止程序阻止。

这是代码

submit_1st_step是表单提交按钮的 ID。

因此,一旦表单验证它会创建一个单击事件并在提交按钮上执行它。

我想弄清楚为什么表单在新窗口中成功提交但有时它会被弹出窗口阻止程序阻止。

是否存在点击后验证时间过长导致JS触发的新窗口事件被浏览器阻止的可能性?

0 投票
1 回答
431 浏览

javascript - Chrome 和 IE 中的弹出窗口拦截器

下面是我用来在新窗口中打开链接的一段代码,比如“abc”。

如果用户再次点击同一个链接,它应该在同一个窗口“abc”中关闭并重新打开该链接。

但是现在,假设我单击该链接,它会在一个名为“abc”的新窗口中打开 URL。现在我去关闭窗口“abc”。并返回并再次单击链接。

那个时候它显示了弹出窗口阻止程序。

当我去手动关闭窗口并尝试通过单击链接重新打开时,我很困惑为什么会出现这个弹出窗口阻止程序。

在 IE 和 Chrome 中都会发生

0 投票
1 回答
160 浏览

javascript - 如何测试命名窗口是否已打开或被弹出窗口阻止程序阻止?

我正在使用以下代码在javascript中打开一个窗口(实际上是PayPal):

如果 Chrome 的弹出窗口阻止程序停止创建窗口,我希望能够检测到并提醒用户。是否有某种测试我可以运行win以查看它是否真的打开过?

0 投票
2 回答
5321 浏览

javascript - 如何使用 JSF 打开弹出窗口而不被浏览器阻止

我正在开发 PrimeFaces 6.0、JSF 2.2 (Mojarra 2.2.7) 应用程序。

我需要从外部站点加载网页并突出显示 DOM 节点。我的方法是创建一个 JavaScript 函数来打开一个弹出窗口,通过 servlet 加载网页(以避免跨域问题)并突出显示节点。我发送给我的函数的参数是在托管 bean 中生成的。

我尝试以两种不同的方式这样做:

  1. 在我的行动中使用RequestContext.getCurrentInstance().execute("myFunction(...)")(是的,我正在使用 PrimeFaces)。
  2. oncomplete="#{myBean.myJsCall}"在我的命令按钮上使用。

两种方式都执行调用并且调用都是正确的,但是我遇到了浏览器的(Chromium)弹出窗口阻止程序:

此页面上阻止了以下弹出窗口

有没有办法在 JSF 或特别是 PrimeFaces 中打开弹出窗口而不会被阻止?

这并不相关,但这是我的 JavaScript 函数的简化版本。

我使用纯 HTML 和 JS 开发了这个脚本。在那里,它在没有阻止程序干扰的情况下打开弹出窗口。此外,在运行 JSF 应用程序时将调用粘贴到控制台时,会打开弹出窗口。