Google Maps API v3

要件

  • Google Mapsのマイプレイスで生成されたKMLデータを使用し、自分のサイトのGoogle Mapに反映させたい。
  • KML内のマーカーデータを抽出し、地図の左に一覧を表示させたい。
  • 表示させた一覧をクリックすることで、地図のマーカーに遷移し情報ウィンドウを表示させたい。
  • Google Maps API v3を使用したい。

課題

  • Google Maps APIの非公式なライブラリとして、上記の要件を満たしそうなもの(http://econym.org.uk/gmap/egeoxml.htm)があったが、どうやらV2が対象。最新版は今作ってる最中っぽい。
  • KmlLayerで配置した後のオブジェクトから一覧の抽出を考えたが、取得できそうなメソッドが見つからない。
  • 今後の拡張も考えると自分で実装したほうが早いかもしれない。

という訳で作ることにした。

課題2

  • kmlは外部にあるので、クロスドメインを何とかしないといけない。
    • 同一ドメイン内のサーバスクリプトを経由させる。
    • JSONP・・・じゃないので駄目( ^ω^)
    • flashを経由させるライブラリを使う
    • iFrameを経由させて、更にlocalStorageを利用する。

色々探したんですが、以下のJSが動作できそうでした。仕組みがわからないけど・・・。
https://github.com/jamespadolsey/jQuery-Plugins/tree/master/cross-domain-ajax/

やっぱ駄目でした。htmlは取得できるのにxmlが取得できない。なんでー・・・
html, jsonp は問題ないようです。うーむ。こんなことをしてるばあいじゃにあ