非同期ページ(部分)遷移jQueryプラグイン(jquery.smartPage.js)

元々jQueryは基本的な非同期ページ遷移機能は付いてんだけど、もうちょっと機能を追加しつつ、汎用性を持たせたものが欲しいなーと思ってとりあえず書いてはみました。

ステータスとしては、「書いたよ」じゃなくて「書き始めた」けど限が無さそうなので、自分のサイトで使える程度でいいや、、、です。

html5のpushState(pjax)と"#!"を利用したロケーションハッシュによる非同期ページ遷移の両方を実装したモノを目指してます。非対応(IEとか)の場合は普通に同期遷移します。

非同期ソースに、"script"タグがあったり、"document.write"の記述があっても、なるべく表示を再現するよう試みますよー。

jquery.smartPageのオプション/コード

Download

利用には、jQuery本体が必要です。別途読み込んでください。

まとめ

なんか久しぶりにjQueryを見てDeferredとか、新しい機能をうまく使わなきゃいけないなーとか思ったけど、使いこなせませんでした。

Deferredにキャンセル機能がほしい、_Deferredにはあるのに、、、Promiseにrejectがほしい、Deferredにはあるのに。。。とか歯がゆい感じになったので早々に諦めました。

もちろん、状態を外部からいじられないようにカプセル化するのは重要なことなんだと思います。。。

--
Chrome Web Storeのアプリ内課金とかが気になる、、、