phantom4

ハッシュ変更を検知

ライブラリに依存しないハッシュ変更を検知するスクリプト。
ほとんど出番はないと思われ。


2013/1/18追記
CoffeeScriptも少しかじったので用意してみた。
ただしやり始めたばっかりなので不備があるかも。。
現時点で把握している不備と対策です。
・on()が存在しない
 →bind()を使う
・off()存在しない
 →unbind()を使う

デモ:

デモ

ソース:

hashchange.js
hashchange.min.js(圧縮版)
hashchange.coffee
TRY COFFEESCRIPT

ドキュメント:

ドキュメント

サンプルソース

(function () {

	/**
	 * hashが変更された
	 *
	 * @param hash {String} ハッシュ文字列
	 */
	function onHashChanged(hash) {
		if(hash.length > 1) {
			alert("hash changed to \"" + hash + "\".");
		}
		else {
			alert("hash is none.");
		}
	}

	WINDOW_APP.util.hashchange.bind(onHashChanged);
	WINDOW_APP.util.hashchange.trigger();   //イベントを実行
	//WINDOW_APP.util.hashchange.start(); //監視を開始(リスナーが追加された時点で開始される)
	//WINDOW_APP.util.hashchange.unbind(onHashChanged);   //イベントを解除
	//WINDOW_APP.util.hashchange.stop(); //監視を終了(リスナーがなくなった時点で開始される)
}());

モバイルバージョンを終了