忍者バリアーを無効化するgreasemonkeyスクリプト

JS切ってブラウジングしてるととても邪魔。
meta refleshが実行されるタイミング的にどうかなーと思ったが、onload時にwindow.stop()でうまくいくっぽい。

// ==UserScript==
// @name           ninja barrier breaker
// @namespace      http://d.hatena.ne.jp/ruby-U/
// @include        *
// ==/UserScript==

//ver.090508

function removeChilds(node){
	var c;
	while(c = node.firstChild){
		node.removeChild(c);
	}
}

function nMatch(node, tag, prop, pat){
	var ns = node.getElementsByTagName(tag);
	for(var i = 0, i_n = ns.length; i < i_n; ++i){
		var s = ns[i][prop];
		if( s && s.match(pat) ){
			return true;
		}
	}
}
var bd = false;
function bb(){
	var ns = document.getElementsByTagName('noscript');
	var rS = new RegExp('shinobi').compile();
	for(var i = 0, i_n = ns.length; i < i_n; ++i){
		var n = ns[i];
		if( nMatch(n, 'a',    'href',    rS ) ||
		    nMatch(n, 'meta', 'content', rS )
		){
			removeChilds(n);
			bd = true;
		}
	}
}
bb();

if(bd){
	window.addEventListener("load", function() {
		window.stop();
	}, true);
}