![Mac 上 Chrome 浏览器的最佳 Flash 拦截器是什么?](https://linux22.com/image/1226344/Mac%20%E4%B8%8A%20Chrome%20%E6%B5%8F%E8%A7%88%E5%99%A8%E7%9A%84%E6%9C%80%E4%BD%B3%20Flash%20%E6%8B%A6%E6%88%AA%E5%99%A8%E6%98%AF%E4%BB%80%E4%B9%88%EF%BC%9F.png)
查看 Chromium 的扩展库,似乎有许多可用的闪存阻止扩展:
甚至有些名字非常相似。我一直在 Safari 中使用 ClicktoFlash,习惯了它在任何地方都能正常工作。不幸的是,在使用 Ruzanow 的 FlashBlock 一段时间后,我注意到它有时会有点“不正常”(通过折叠 div 来阻止闪光灯,因此您无法单击以启用它,等等)。
我感觉上面没有列出的其他扩展/脚本可能更好。最终,我想找到一个在 Safari 中效果与 ClickToFlash 一样好的 Flash 拦截器。
答案1
除了真正的扩展/附加组件外,还可以使用油脂猴脚本。这通常需要插件或内置浏览器支持†。但对于 Mac 上的非 HTTPS 网站,可以使用闪光阻断剂添加这样的脚本全部一次性浏览器:
GlimmerBlocker 的实现如下:http 代理,因此 Safari [或任何浏览器,Arjan] 的稳定性不会受到影响,因为它不使用任何黑客。它甚至与所有其他浏览器和其他使用 http 的本机 Mac OS X 应用程序兼容,例如 NetNewsWire。
您始终能够升级 Safari [或任何浏览器],而不会破坏 GlimmerBlocker(或等待新版本);并且您无需升级 Safari [或任何浏览器] 即可升级 GlimmerBlocker。这使得使用测试版变得更加容易 [..]。
除了简单地阻止对的引用之外.swf
,还可以使用它的转换重写 HTML 的选项。但最简单的解决方案是添加 GlimmerBlocker 功能任何JavaScript 到任何页:
- 添加新规则(可选,首先添加新过滤器来存储规则)
- 将“规则类型”设置为“白名单 URL,可选修改内容”
- 在“javascript”窗格上添加源代码,例如 广告拦截器Greasemonkey 脚本由 Alexey Ruzanov 编写。
我没有用过 Alexey Ruzanov 的真正的附加组件,但在他的 Greasemonkey 脚本中按 Option-F 可切换当前网站的白名单。要暂时启用某些特定的 Flash,请单击针对被阻止的内容显示的 Flash 图标。右键单击(或按住 Ctrl 键单击)该图标可获得更多选项,包括复制 Flash URL。不幸的是,使用以下任一方法都可以记住网站是否被列入白名单DOM 存储或 cookie,两者都是特定于浏览器的。因此,在一个浏览器中启用 Flash 并不会在另一个浏览器中启用它。
当然,作为额外奖励,您还可以获得 GlimmerBlocker 的广告拦截功能,适用于普通的 HTTP 网站。
但请注意:
FlashBlock 使用 HTML 本地存储,因此可能会留下痕迹在您访问的每个网站的本地硬盘上,无论它是否使用 Flash,甚至是否处于隐私浏览模式。
这不能用于过滤安全的 HTTPS 页面。代理无法窥视内容,更不用说更改它了。此外,GlimmerBlocker 也无法阻止 IP 地址:“Host”的值实际上是主机头,而 HTTPS 流量无法看到这一点。除此之外,阻止 IP 地址更容易hosts 文件。
即使在查看纯 HTTP 页面时,对 HTTPS 资源的引用也无法被阻止。就像阻止 HTTP 网站告诉 Google 和 Facebook 您正在查看的内容一样,阻止
<iframe src="https://plusone.google.com/...">
实际上需要您更改您正在查看的页面的 HTML。浏览器插件在这方面做得更好,并且可能也会在域更改时更新。不过,对于那些坚持在 GlimmerBlocker 中这样做的人来说:可以将特定域重写为一些虚拟域。在“转换”窗格上,将“仅适用于内容类型”设置为“任何文本类型”,然后添加:// Rewrite "plusone.google.com" to "plusone.google.com.blocked", and so on: replace(/(plusone\.google\.com)/g, "$1.blocked"); replace(/(apis\.google\.com)(\/js\/plusone)/g, "$1.blocked$2"); replace(/(facebook\.com)/g, "$1.blocked"); replace(/(facebook\.net)/g, "$1.blocked"); replace(/(fbcdn\.net)/g, "$1.blocked");
如果某些 JavaScript 以简单的文本替换不易识别的方式写出域名,则此操作仍会失败。
†与 Firefox 类似,需要原始附加组件,但 Opera 和 Chrome 已内置支持。请参阅维基百科了解更多浏览器详细信息。
答案2
严格基于特征:
Josorek 的 Flashblock
- 可以阻止 Flash 或 Silverlight 或者两者
- 您有一个选项窗格
- 您可以将网站添加到白名单或从白名单中删除
- 您还可以配置占位符图标的设置(位置、透明度)
Ruzanow 的 Flashblock
- 将阻止 Flash 和 Silverlight
- 您可以通过访问相关站点,右键单击占位符图标并选择禁用该站点的 Flashblock,将站点添加到白名单中。(似乎没有办法取消此操作,或者进一步管理白名单。)
杀闪
- 一些网站默认被列入白名单,包括 YouTube 和 Gmail(似乎无法将新网站添加到此白名单,或删除现有网站。)
答案3
我用由 ruzanow 制作的 flashblock而且对我来说效果很好。
答案4
这是最近出现的另一个:
- 阻止闪存
- 无需重新加载页面即可重新阻止 Flash。还可以通过更改可见性状态来禁用渲染
- 选项窗格
- 白名单和黑名单管理
- 过滤器可以使用正则表达式和星号通配符
- 配置设置包括占位符颜色和透明度
虽然 Josorek 的 Flashblock 不具备其中的一些功能,但它在阻止 Flash 方面确实做得很好。
Ruzanow 的 FlashBlock 将其白名单存储在 HTML cookie 中,因此在删除浏览器的 cookie 后,您将失去它。没有办法管理这些数据,因此您列入白名单的任何网站都将保持该状态;由于没有办法撤消任何修改,我们面临一个两难境地:删除 cookie 或使用第二个阻止程序阻止 FlashBlock 列入白名单的网站上的 Flash。
我推荐 Josorek 的 FlashBlock。