Skip to content

Instantly share code, notes, and snippets.

@iogi
Forked from os0x/noreferrer.user.js
Created January 28, 2010 06:10
Show Gist options
  • Save iogi/288489 to your computer and use it in GitHub Desktop.
Save iogi/288489 to your computer and use it in GitHub Desktop.
// ==UserScript==
// @name noreferrer
// @namespace http://ss-o.net/
// @include http://*
// ==/UserScript==
document.body.addEventListener('DOMNodeInserted',noref,false);
noref({target:document.body});
function noref(e){
if (e.target.getElementsByTagName) {
var as = document.evaluate('descendant-or-self::a', e.target, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
for (var i = 0, l = as.snapshotLength;i < l;++i){
var a = as.snapshotItem(i);
if (
a.href.indexOf('http') === 0 &&
a.host !== location.host &&
!/noreferrer/i.test(a.rel)
) {
a.rel = (a.rel ? a.rel + ' ' : '') + 'noreferrer';
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment