0

在我的应用程序中,我们使用的是弹出窗口 Ex。窗口.打开();当我尝试登录时,每次弹出窗口在 IE 7、IE 8 和 IE 9 中都被阻止。

如何使用 JavaScript 代码禁用它。

提前致谢..,

4

1 回答 1

1

弹出窗口阻止程序应该阻止附加到onloadonunload(以及其他与请求弹出窗口的人没有直接关联的事件)等事件的弹出窗口出现,但不应该阻止那些附加到onclick链接上的事件(以及其他可以被认为是指该人已提出要求)。

并非所有浏览器都足够聪明,可以意识到如果onclick链接上的事件调用了一个函数,并且该函数的目的是打开一个实际上已请求弹出窗口的弹出窗口。他们在函数中看到弹出代码,但不够聪明,无法看到该代码是由于使用浏览器的人的操作而被调用的。以这种方式对我们的弹出窗口进行编码会导致弹出窗口被阻止,尽管它被请求了,这是一种让某人生气的肯定方法,尽管问题实际上是他们的浏览器,但您的网站无法正常工作。

对于许多愚蠢的浏览器来说,解决这个问题的方法是将弹出代码放入onclick自身而不是调用函数。

例如,

<a href="some_page.html" onclick="window.open('some_other_page.html')">Open Popup</a>

以下是一些可能对您有所帮助的以前的帖子,

设置 JQuery event.preventDefault() 时绕过 window.open 上的弹出窗口阻止程序

阻止与非阻止弹出窗口

于 2012-12-18T12:44:06.807 回答