個人用メモ。
基本的に data-ajax='false' にはしない方針。
2015-05-15
ページidを割り当てる
- ページ毎に、url依存あるいはアクセス日時などによる*id属性(ページid)*を付ける。
- ページ内でid属性をhtml要素に割り当てる場合は、ページidをprefixとして用いる。
javascriptについて
ページ毎に別に持つ必要の在る変数は、namespace的な仕組を使う
- 外からは page.url.変数名 などでアクセスできるようにする。
namespaceについては このチートシートを参考に。
GoogleMapを利用する場合
- メモリを食いそう(調べてはないけれど)なので、多くのページをキャッシュしないように。
- google.maps.Map オブジェクトを割り当てたHtml要素が削除されるとエラーが発生するので、pagecontainerremove イベントでオブジェクトを削除するように。Markerなども同様?
- 頻繁に地図を表示させるようなサイトの場合は、地図表示用のページを、サイトのどこからでも使えるように、data-dom-cache='true'を指定して作成しておくと便利。
マーカーの配置やboundsの設定は、地図ページのpagecontainercreateイベント処理。 - google.maps.Map オブジェクトの生成は、pagecontainerchangeイベントで処理する
pagecreate で生成すると、地図の表示領域が狭くなる。
地図を描画するHtml要素が表示隠れている状態でオブジェクトを生成するとこうなるのではないかと。以前、jQuery.ui の dialog で地図を表示した時もそうだったし。