8

The background

Ok, this is a toughie. I'm a Firefox user, and I don't like Flash ads. They slow down my netbook, they slow down my Macbook, they sometimes play sound or obscure part of the page, all of which means as soon as I see a Flash ad I associate that advertiser with burning rage more than with good products.

The problem

That said, I don't see how the Web can exist without advertisement. I'm also not convinced that ABP's "acceptable advertising" functionality will actually encourage sites to change their advertising to serve static ads. For every technorati with an adblocker, there's someone who likes shooting animated, cartoon ducks in a sidebar ad. So rather than trying to politically force the advertisers to change their practices, I'd like to find a client-side way to opt out of just Flash ads—without opting out of static ads or even animated GIFs (even a nice, smooth animated GIF is better than jerky, resource-consuming Flash).

Possible solutions

Turns out that if I disable Flash in about:addons, pretty much all advertisers actually detect the absence of Flash and serve me a static ad instead. This is fantastic: I can browse the Internet in peace and still support the sites I visit with ad views. It actually makes me more likely to read the ad and feel positively about it. Problem is, I haven't found a way to disable Flash by default and enable it for whitelisted sites (or at least, not on OS X and Arch Linux. Embarrassingly, IE actually has a built-in way to whitelist plugins).

There are plenty of addons and userscripts that, rather than disabling Flash outright, simply replace Flash content with nifty logos or "click to play" buttons. But that's not what I want, and to be honest, scattering the same logo everywhere there's flash content (i.e. everywhere) is kind of ugly. And a button on the toolbar to toggle Flash quickly isn't quite right either, because there's no whitelist. I'd like to be able to browse Wired with static ads, then open Youtube without having to click that button first (and then inevitably forget about it as soon as I browse somewhere else).

Anyone got a solution? Or ideas about userscript ways to make this happen? I can't be the only person who finds those little replacement icons even more jarring than the Flash ads themselves.

3
  • 3
    Uninstall the Flash Player, install Google Chrome, and when you absolutely need Flash, view the page in Chrome. daringfireball.net/2010/11/… Feb 2, 2012 at 20:19
  • Write that as a solution and I'll go ahead and pick it! I can disable Flash in Firefox's about:addons, then just use Safari when I want Flash. I already do that for Silverlight with Netflix. After thinking and playing with this a while, I don't think it's possible to do with Javascript, and I don't know if an extension can even be written to selectively enable and disable plugins. I think the best thing would be for Firefox to add permissions lists to plugins like IE does. That would be perfect, but alas :) Feb 2, 2012 at 22:34
  • Now there is an answer! Feb 3, 2012 at 19:07

6 Answers 6

1

FlashHider does exactly this, it hides Flash from the sites where it's blocked.

1
  • YES! This is exactly what I was looking for! Jul 14, 2016 at 15:57
8

Flashblock is what I use. Works quietly, allows whitelist.

2
  • 2
    Not bad, I looked at this one as well. But it still doesn't really disable Flash, since detection scripts don't pick up that Flash isn't getting displayed. Thanks though! Feb 2, 2012 at 22:43
  • 1
    Is there any benefit to this now over the built-in "Activate Adobe Flash" prompts?
    – endolith
    Feb 26, 2015 at 16:43
4

NoScript, a Firefox addon; it lets you disable scripts, Flash and other plugins and has a whitelist.

7
  • 1
    I was OK with NoScript for a while, but eventually it just got to be too much of a pain, so I left it on with the "dangerous" option. Unfortunately, I don't see a way to allow everything but Flash, while still having a Flash whitelist. So I think we're back to square one. Feb 1, 2012 at 11:07
  • To allow everything but Flash in NoScript, go to Options -> Embeddings and have just "Forbid Flash" checked. This will block Flash only and allow all other plugins and scripts. Then in the whitelist add the sites you want Flash enabled. Another option is FlashBlock: addons.mozilla.org/en-US/firefox/addon/flashblock, but I've never used it.
    – lupincho
    Feb 1, 2012 at 13:20
  • ? I don't see a way to globally allow Javascript but globally forbid Flash except for a whitelist. And I'm not convinced NoScript would do what I want: to act like Flash is completely disabled on that page. Feb 2, 2012 at 20:09
  • The procedure that I described above -- go to Embeddings and uncheck everything except for "Forbid Flash" will allow Javascript globally and forbid Flash globally (initially, before you change that in the next step). After you add sites to the whitelist (Options -> Whitelist), Flash will be allowed for these sites. The end result would be that Javascript will be allowed globally, Javascript will be enabled for the sites in the whitelist and Javascript will be disabled for all other sites (that aren't in the whitelist).
    – lupincho
    Feb 2, 2012 at 20:24
  • Ah, I see what you're talking about. That sorta worked, but it's not quite right, since Flash is still enabled: Flash detection Javascript will report Flash as enabled, then it serves the .swf and NoScript blocks it. Where I'd like to find a way to block Flash selectively without breaking those detection scripts. I thought I could use Javascript to work with the detection Javascript, but they're not so easily fooled :) Feb 2, 2012 at 22:42
4

Uninstall the Flash Player, and install Google Chrome (it includes the Flash Player plugin built-in). Browse normally with Firefox, and when you absolutely need Flash, switch to Chrome.

John Gruber explains this setup. You can even define a keyboard shortcut to open the current page in Chrome.

To make this process automated (and use Internet Explorer instead), you can use the Firefox add-on IE Tab 2. It can display a Firefox tab using Internet Explorer automatically, based on filters that you specify.

3

This is EXACTLY what I'm looking for. I want the flash plugin to appear to be disabled to certain websites, and enabled to certain other websites.

The closest I have come so far is to use the FlashDisable add-on which adds a simple toggle button to the Firefox UI that I manually use to turn the flash plugin on and off (at least it comes with an automatically reload function which is nice). So I cruise with Flash off until I come across a site that absolutely needs it, and I hit the toggle button. Then I need to remember to turn it back off when I'm done.

There are several benefits to be had if this enable/disable plugin action could be made automatic based on a whitelist that enables/disables the flash plugin based on webiste visited:

  1. I want my videos served in HTML5 as long as that is possible, but I would still like a flash fall-back if HTML5 is not supported on a particular site. Unfortunately, pretty much all websites have a Flash-first, HTML5-fallback attitude. I want it the other way around. Therefore I want to selectively pretend to such sites that I don't have flash at all, so they auto-serve me the HTML5.

  2. I realized that video loading with Flash on some websites stalls indefinitely, if certain privacy add-ons like Ad Block Edge or Disconnect are detected. The HTML5 on the other hand seems to get served regardless. Therefore forcing HTML5 on such sites also allows me to get rid of ads.

The in-built Click-To-Enable function in Firefox does NOT do what I am looking for, because it still reports to the website that Flash is enabled, but then waits on a local command to serve the Flash element. This still means I get served Flash on the website I wish would give me the HTML5-fallback instead.

1
  • Thanks a lot, FlashDisable is finally something that works.
    – jgillich
    Jan 4, 2015 at 3:57
3

Tools->Add-ons->Plugins: in there when I go to Shockwave Flash I get three options:

  • Always activate,
  • Ask to activate, and
  • Never activate.

If you select the second option, Ask to activate, then flash will not play by default. When a website requires flash, you can click a link on the flash location called Activate Adobe Flash and a popup appears asking you to either allow just this time or allow it this time and remember for future visits. If you click on the icon on the top left corner you can block it again for this website.

1
  • 1
    Thanks for the answer! Not quite what I had in mind though: I find those "activate Flash" images annoying as well. What I'd like to see is the static images that are served when sites detect Flash isn't available at all. Feb 1, 2015 at 20:25

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .