ただ単純に貼付けるだけなら、とっても簡単で、便利なgoogle mapだけど、深いところまで追求すると、結構ややこしい。
とりあえず、解っている事をメモ。
クリックされた地点の緯度経度を抽出する方法。
var map = new google.maps.Map2($(“#map”)[0]);
var center = new google.maps.LatLng(35.70023955865944 , 139.7623559832573;);
map.setCenter(center,15);
GEvent.addListener(map,”click”,function(lay,latlng){
alert(latlng);
})
とりあえず、赤文字のところで、地図を表示。ここまでは良いとして、若干考え方が難しそうなのが、青文字で書かれた部分。
「click」は、クリックされる場所によって、返す値が違うらしい。具体的には、クリック可能なオーバーレイの上をクリックしたか、単純に地図の上をクリックしたかで、返す値が違うっぽい。
今回は、純粋に地図の上をクリックした場合。
〜〜”click”,function(lay , latlng){処理}
関数の第一引数には、必ずNullが入り、第二引数に、緯度経度の情報が入るっぽい。つまり、この場合、「lay」にはNullが、latlngには、緯度経度の情報が入る。
……うーん。前から解らないのが、このあたり。なんだか勝手にfunctionの引数を入れてるみたいな感じ?GEvent.addListenerに入れている、「map」を「click」したら返ってくる値を、「function」の引数に入れる。そんな感じか?ついでに、クリックされる位置(オーバーレイの上とか)によって、返す値が若干違う。
………うーん。うーん。
まあ、とにかく使っていくうちに覚えて行くでしょう(笑)
忘れがちになるであろう事は、緯度経度の値は、第二引数で返ってくるってこと。いつもと同じ感覚で、第一引数しか入れずに出力してしまうと、Nullが返ってくる。気をつけよう。