Skip to content

Instantly share code, notes, and snippets.

@azu
Created February 7, 2009 14:24
Show Gist options
  • Save azu/59890 to your computer and use it in GitHub Desktop.
Save azu/59890 to your computer and use it in GitHub Desktop.
var REPLACE_CONTENT = true;
var URL_LIST = [
/^http:\/\/tinyurl\.com\//,
/^http:\/\/(?:.*?\.)?zz\.tc\/.+/
];
var requested = {};
document.addEventListener('mouseover',
function(e) {
var elem = e.target.wrappedJSObject;
if (requested[elem] == undefined && elem.hasAttribute('href')) {
if (!URL_LIST.some(function(re) re.test(elem.href))) return;
requested[elem] = true;
GM_xmlhttpRequest({
method: 'get',
url: elem.href,
onload: function({
finalUrl: url
}) {
elem.href = url;
if (REPLACE_CONTENT) {
elem.textContent = url;
} else {
elem.title = url;
}
},
onerror: function() {
delete requested[elem];
}
});
}
},
false);
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment