Ultra Popup Blocker

Configurable popup blocker that blocks all popup windows by default.

当前为 2021-06-01 提交的版本,查看 最新版本

您需要先安装一个扩展,例如 篡改猴Greasemonkey暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴暴力猴,之后才能安装此脚本。

您需要先安装一个扩展,例如 篡改猴Userscripts ,之后才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。

您需要先安装用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

作者
Eskander
评分
0 0 0
版本
3.3
创建于
2019-07-27
更新于
2021-06-01
大小
9.7 KB
兼容性
与 Firefox 兼容 与 Chrome 兼容
许可证
MIT
适用于
所有网站

Ultra Popup Blocker

Ultra Popup Blocker (or UPB for short) is a lightweight Popup Blocker that aims to block all popup windows by default, (even good, unharmful, user-initiated ones) on a permission model, while providing a clean Permission manager for easy configuration.

Why another popup blocker?

Built-in Firefox and Chrome popup blockers blocks only the popups that were created automatically via scripts on page load etc. When you click on a button on the page, it won't block it. However, malicious websites can create JS code that will launch the popups whenever you click on any blank space on the page for instance.

How does it work?

In JavaScript, functions are first-order citizens. It means you can store a function in a variable and pass it freely. You can also modify the native functions provided by the browser, like 'window.open'. Here, we override 'window.open' with our own implementation which prompts the user to see whether he really wants to open a popup window.

Managing permissions

Use the permission manager provided with Ultra Popup Blocker to set which websites are trusted to open popups freely.

Install instructions

  1. Get a userscript manager from your browser's addon store. I personally use Tampermonkey on Firefox ➚.
  2. Add Ultra Popup Blocker from one of the following sources:

GreasyFork OpenUserJS GitHub