jQueryのオブジェクトをdumpするプラグイン

こんばんは。
最近寒すぎて、悴んだ手のせいで名刺交換にやたら時間がかかるさのじです。

最近取りかかっているサイトでは、jQueryでガシガシ共有プラグインを書いてます。
一番初めに、phpでいうvar_dump()の要領でjQueryオブジェクトをdumpするプラグインを書いたので紹介します。

(function($){
	$.fn.dump = function(){
		var elements = this;
		var dumphtml = [];
		
		elements.each(function(){
			var element = $(this);
			if($.browser.msie) {
				for(var i = 0; i < element.length; i++) {
					dumphtml.push(element[i].outerHTML.replace(/^[\r\n\t]+/, ''));
					dumphtml.push("\n");
				}
			} else {
				for(var i = 0; i < element.length; i++) {
					dumphtml.push('<' + element[i].nodeName.toLowerCase());
					for(var j = 0; j < element[i].attributes.length; j++) {
						dumphtml.push(' ' + element[i].attributes[j].nodeName + '="' 
							+ element[i].attributes[j].nodeValue + '"');
					}
					dumphtml.push('>' + element[i].innerHTML);
					dumphtml.push('<\/' + element[i].nodeName.toLowerCase() + '>');
					dumphtml.push("\n");
				}
			}
		});
		alert(dumphtml.join(''));
		
		return this;
	};
})(jQuery);

使い方は、対象のjQueryオブジェクトのdump()メソッドを実行するだけなのでお手軽です。

$("#test").dump();

こういうのって内容のわりに書くのがめんどくさい気がします。
firebugなどのjavascriptデバッグツールを使えば済むことなので、余計に書く気が起きませんでした。
同じような考えの方に使ってもらえたらうれしいです。

いじょ