javascript - 如何从 BHO 阻止 window.showModalDialog 弹出窗口?

标签 javascript internet-explorer popup bho showmodaldialog

我正在开发 BHO 弹出窗口/广告拦截器,但我找不到如何阻止此 js 触发的弹出窗口:

var popDialogOptions = "dialogWidth:795px; dialogHeight:500px; center:1; menubar:1; tollbar:1; location:0; resizable:1; scroll:1; status:1; fullscreen;yes";
eval("window.showModalDialog('http://uri.com/popup.html,'',popDialogOptions)");

我正在拦截 DISPID_NEWWINDOW、DISPID_NEWWINDOW2 和 DISPID_NEWWINDOW3,但这些都没有被触发,但弹出窗口确实打开了。

如何阻止此类弹出窗口?

最佳答案

我对 IE BHO 不太熟悉,但是,关于 JavaScript 本身:您是否考虑过在页面开头添加

window.showModalDialog = new Function();

例如通过插入新的 <script>作为 <head> 的第一个 child (阻止我在 IE8/XP 中弹出窗口)还是这太残酷了(因为它根本阻止了模式对话框)?

关于javascript - 如何从 BHO 阻止 window.showModalDialog 弹出窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8070781/

相关文章:

html - Internet Explorer 9 无法正确显示文本

javascript - Kendo/IE/缓存

css - 单击文本时的 HTML/CSS Popup div

javascript - 列出数据库中按特定列排序的表 : node. js

javascript - Bootstrap 轮播没有响应

jquery - 在 IE7 和 iE8 中的输入框中的任意位置单击时占位符文本不会消失

javascript - 阅读更多显示全部内容的弹出窗口 - HTML

javascript - 弹出问题...不确定这是否是最好的方法

javascript - iPad 5x 操作系统错误渲染网页 JavaScript 是否常见?

javascript - 我的脚本完美运行,直到我将其包装在 if (screen.width < 980) { } 语句中以检查屏幕尺寸