The free RapidShare downloads are pretty good – but the downloading process is unnecessarily frustrating. Whereas many other providers drown their visitors with ads to generate revenue that pay for their servers (which is reasonable), RapidShare forces you to wait for no reason other than to frustrate you.
Fortunately, as adblocker has proven, we are capable and legally entitled to control the display of websites as we please. So, with no further ado, here is the solution:
Simply right click and bookmark the above link, so that next time you’re stuck on a web page that’s making you wait for no good reason, you can open the bookmark, and the countdown will immediately complete.
Here is a Rapidshare File to test it on.
For those interested, here is how the script works:
- The aforementioned link executes javascript on the page it’s loaded on. This javascript loads an external file.
- In the external file, we pull all of the variables a page is using.
- One second later, we pull all of the variables again.
- We compare the first set of variables to the second set, and if any are exactly just one less, we identify a countdown timer
- We now know which variable to set – and we set it to 1 (or very low).
The bookmark link looks like this:
<a href="javascript:(function(){var head=document.getElementsByTagName('head')[0], script=document.createElement('script') ;script.type='text/javascript'; script.src='http://www.latentmotion.com/downloads/skip-timers.js?' + Math.floor(Math.random()*99999); head.appendChild(script);})(); void 0">Skip Timers Bookmarklet</a>
And the external javascript looks like this:
/*
* Skip Timers - version 0.1
* Written By: Brett Barros
*
* The purpose of this script is to save you time by setting countdown
* timers immediately to 1.
*
* If you use this script, please link back to my site with credit / kudos
*
* Copyright (c) 2010 Latent Motion (http://latentmotion.com/downloads/skip-timers.html)
* Released under the Creative Commons Attribution 3.0 Unported License,
* as defined here: http://creativecommons.org/licenses/by/3.0/
*
*/
// List of original variables
var oldVars = {};
for (var name in this) {
oldVars[name] = this[name];
}
// Compare variables one second later
function compareVars() {
var newVars = {};
for (var name in this) {
newVars[name] = this[name];
}
for (var key in oldVars) {
if (oldVars[key] !== (newVars[key])) {
window[key] = 1;
}
}
}
// Call function to compare variables
setTimeout("compareVars()",1000);
Popular Posts
- Separating jQuery Functions into External Files (without selectors!)
- Search and Share
- How to Sort an Associative Array (object) in Javascript
- How to Create a jQuery Bookmarklet
Alternatively, you may want to return to the Home Page to view the most recent blog posts in order. If you have any questions, I make a point of reading and responding to all comments. Thanks for joining!








