Superiour popup blocker fails popup “test”

Popup blocking has been a bit of an arms race. Browsers have added more and more advanced heuristics to distinguish "wanted" and "unwanted" popups, and popup script authors have worked hard to find useful exceptions to the browser rules.

Most of the holes popup users have found in the previous popup blocking approaches have been fixed in the most recent browser versions. Opera's popup blocking has been vulnerable to Flash-trickery but that will be history in Opera 9.

However, some users have been curious why the page appears to show several popups that evade the blocker. Analysing this issue throws light on some interesting quirks and browser differences.

There is one immediately obvious aspect of a good popup blocker: it should be good at separating "wanted" popups from "unwanted". Opera fails this popup test because you did ask for the popups – you clicked a link to start the test. In other words, Opera is better at detecting what popups you do want than whatever browser this test was tested with.

Another and more technical aspect is whether the script should be able to detect that the popup it tried to open was blocked. Opera goes further to avoid "popup blocker detection" than the others do: we return a dummy window object to the script. A popup blocking return object demo shows that most other popup blockers simply return null. Hence, even if this test started as an "unwanted" action it would be unable to detect that the popups were blocked.

The test simply makes too many assumptions about the popup blocker(s) it will be tested against.

7 thoughts on “Superiour popup blocker fails popup “test”

  1. Wow, that's interesting! I'm pretty pleased with Opera 8 blocker, so I can't even test Opera 9 with real popups on web sites, because I don't remember those. ;)I can remember only one popup that bother me – with some education proposal… But can't remember address of the site that's gave me this popup.Do anybody have real examples of sites with popups that shows in Opera 8 and now don't in Opera 9?

  2. As far as I remember a site called ShareReactor has been reported many times for containing advertising that gets around the blocker. I haven't checked if the site or the ad is still there.

  3. Fooling the popup blocker detection is a very, very bad idea. There are cases when website has legitimate reasons to open a popup window because it is just the best thing to do from the usability point of view. This website would, of course, need to have a fall back for the browsers with popup blockers. But it won't work in Opera.Now give me one example where user actually gains something from the fact the a malicios site won't know that a popup worked. And no, falling back to a more power popup generation method is not a good example as they might as well just use the most powerfull one in the first place.Or if they care to circumvent the new Opera's protection, they would just always use both (resulting in two popups… but do they care?)

  4. Originally posted by mk1925:

    give me one example where user actually gains something from the fact the a malicios site won't know that a popup worked.


    win.location.navigate(url); // doesn't throw with a fake window object
    // do something the user wants to happen
    // you only get here if navigate() didn't throw though..

    But it's perhaps been a while since this was a problem – probably goes back to the early days of popup blocking 😉

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s