googleマップAPI
業務で必要になったので早速本を購入。
- 作者: 稲葉一浩
- 出版社/メーカー: 毎日コミュニケーションズ
- 発売日: 2006/09
- メディア: 単行本
- 購入: 2人 クリック: 180回
- この商品を含むブログ (25件) を見る
- 作者: アイティティ
- 出版社/メーカー: 技術評論社
- 発売日: 2007/02/09
- メディア: 単行本(ソフトカバー)
- 購入: 1人 クリック: 45回
- この商品を含むブログ (6件) を見る
あとは、WEBも併用して調べつつコンテンツ作成をしてたんだけど、いきなしハマった。
マーカーがクリックされたら情報ウィンドウを表示する
ここのサンプルをコピペしたんだけど、どうしてもFirebugでエラー表示されてしまう。
GEvent.addListener(map, "click", function(marker){ marker.openInfoWindowHtml(detail); });
試しにIEで確認したら正常に動いた。でも、FirefoxではFirebugエラー。文法の間違いはないし、しかも情報ウインドウはきちんと開く。でもマウスドラッグしたり、情報ウインドウを閉じるとエラー。なんでだろーと30分くらい調べた結果、ふと気がついた。
「map」は地図。「marker」はマーカー。ん?
GEvent.addListener(map, "click", function(marker){ marker.openInfoWindowHtml(detail); });
これ!!クリックイベントが地図自体に設定されとる!!
地図クリック→対象マーカーに情報ウインドウを開く
ってなってた。そりゃエラーになるわ。マウスドラッグも、情報ウインドウを閉じる時も、地図をクリックしてることになるから。
というわけで修正版。
GEvent.addListener(marker, "click", function(){ marker.openInfoWindowHtml(detail); });
これでうまくいくよ。