Really Simple History

ajaxで画面の一部を更新する際、通常だとブラウザの「戻る」でユーザが所望する画面遷移が実現できないことがあるのだけれど、このライブラリを利用すると問題を解決することができる。

Really Simple History (RSH): Ajax history and bookmarking library

使い方は、ソースをダウンロードするとサンプルがついているのでソースを読めばわかりやすい。
このライブラリに関してprototype.jsと併用する際に生じる問題を以前調べていたのだけど、すっかり忘れていたのでメモ。
rsh.js中でJSONを利用するために付与されているjson2007.jsというソースがついているのだけれど、prototype.jsを利用する場合はこれが不要になるが、以下の記述をrsh.jsの履歴管理用のインスタンスを作る際に加えてオーバーライドしておく。

// 付属のjson2007.jsを利用する場合
//window.dhtmlHistory.create();
// prototype.jsを利用する場合
window.dhtmlHistory.create({
toJSON: function(o) {
return Object.toJSON(o);
}
, fromJSON: function(s) {
return s.evalJSON();
}
});
// 後は使い方は同じ
var yourListener = function(newLocation, historyData) {
// (戻る・進むボタン押下時処理記述)
}
window.onload = function() {
dhtmlHistory.initialize();
dhtmlHistory.addListener(yourListener);
};

本当、すぐ忘れる様になってしまった。
そして何かあるとblogを検索するとキーワードや解決策が見つかる様になってしまった。

<参照>
Really Simple HistoryでAJAXにブックマーク機能と履歴機能を付加する - Builder ZDNet Japan

(Visited 2 times, 1 visits today)

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です