hashchangebrokerとstatehashableの補足ドキュメントについて

1726 ワード

url hash:urlの#番号の後ろの部分で、通常htmlページのアンカーポイントにナビゲートします.hash変更ページはリフレッシュされないため、ajaxアプリケーションではgmailなどのスクリプト実行状態をhashで格納します.
jquery hash change event plugin:Internet Explorer 8、Firefox 3.6+、Chrome 5+には、すでにwindowが提供されています.onhashchangeイベントですが、古いバージョンのブラウザではこのイベントはありません.このプラグインは、古いバージョンのブラウザでhashchangeイベントを再提供するために、タイマによってhashが変化したかどうかを判断します.
hashchangebroker:このjquery extendを前に書いて、4つの方法を提供しました.
$.hashchangebroker.subscrib(fragName, handler)
fragNameに対応するhash段落の変更を購読し、指定したhandlerに転送します.url hashはいくつかのfragからなり、1つのfrag形式は:[fragName]:[state]である.fragNameはカスタムhashステータス名です.stateはbase 64で符号化されたjson文字列である.handlerには、カスタムステータスを記述するパラメータstate:jsonフォーマット文字列が1つしかありません.
$.hashchangebroker.publish(hash)
この方法はwindowにバインドする必要があります.onhashchangeイベント.hashを受信し、変更を見つけたfragを復号し、fragを購読したhandlerに転送する.
$.hashchangebroker.changeFrag(fragName,state)
このメソッドはstatehashableタイプによって呼び出され、hashのfragNameに対応するfragのstateを変更します.
$.hashchangebroker.init()
この方法は、ページのリフレッシュ後にhashとpublishを取得するために使用されます.$(document).readyで呼び出せばいいです.すべてのsubscribメソッドの後に置く必要があります.
statehashable:このwidgetを提供するのは、url hashにコントロールの状態を簡単にパブリッシュし、コントロールに対応するhash fragのstate変化を取得し、対応するstatechangeイベントをトリガーすることを望んでいます.
用法$(dom).statehashable();このメソッドを呼び出すとdomオブジェクトにhashchangeイベントが追加されます.statehashableオブジェクトがコントロールに対応するhash fragの変化を発見するとdomオブジェクトのhashchangeイベントがトリガーされます.使用方法:
 
  
$(dom).bind("hashchange",function(e,stateObj){
// stateObj , dom
});

domステータスを変更する方法でstatechangeのイベントトリガを追加する必要があります.statehashableオブジェクトはイベントをキャプチャし、hashchangebrokerのchangeFragメソッドを呼び出してhashを変更します.statechangeトリガの例:
$(dom).trigger("statechange",[stateName,stateValue]);