SOS

Shane O'Sullivan's technical blog… really ties the room together

Skip Welcome Screens With Greasemonkey

Posted by Shane O'Sullivan on April 18, 2009

A feature of some websites that really annoys me are so called “Welcome Screens”, otherwise known as full page advertisements that you have to click through to see the real page. (e.g. Forbes.com).  This apparently annoys plenty of other people too, so I decided to write a simple GreaseMonkey script that will automatically get past the majority of these pages.

It is called “SkipWelcomeScreen”, funnily enough, and you can install it on Firefox 3 from it’s homepage at http://chofter.com/apps/?n=skipwelcomescreen

If you’re not interested in technical details, you can stop reading now.

Using Sizzle with Greasemonkey

To very quickly search the page for anchor tags, I used John Resigs very cool standalone query selector engine, Sizzle.  However, it had to be modified very slightly to work in GreaseMonkey.

At the end of the Sizzle.js file, there is the line:

window.Sizzle = Sizzle;

which had to be changed to

unsafeWindow.Sizzle = Sizzle;

due to GreaseMonkey’s use of a sandbox.

Also, when calling Sizzle, it wasn’t possible to call it directly, like:

Sizzle("a");

instead it has to be called using the unsafeWindow parameter:

unsafeWindow.Sizzle("a");

Otherwise, it works perfectly, and is blisteringly fast.

About these ads

3 Responses to “Skip Welcome Screens With Greasemonkey”

  1. quick tip:

    You can take Acme (the Dojo query engine that’s somewhat faster than Sizzle) and use it stand-alone too. Just pull query.js out of dojo/_base/ and us it on it’s own. It should show up as Acme.query() if you include it stand-alone on a page.

    Regards

  2. @Alex, I wasn’t aware that it is now standalone. I’ll look into incorporating it

  3. [...] Skip Welcome Screens With Greasemonkey [...]

Leave a Reply

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

WordPress.com Logo

You are commenting using your WordPress.com 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

 
Follow

Get every new post delivered to your Inbox.

Join 533 other followers

%d bloggers like this: