2012-02-27 18 views
4

私は複数のPHPとMySQLデータベースからフェッチされたマーカー、各マーカーのコード以下の生成があります。GoogleマップAPI v3にドラッグ可能なマーカーを読む新しい位置

var marker28= new google.maps.Marker({position:new google.maps.LatLng(64.2,11.4),map: map,draggable: true,icon: 'slayer.png',title: '#28 slayer (64.2, 11.4)'}); 
google.maps.event.addListener(marker28, 'dragend', markerMoved(marker28)); 

var marker25 

を....など

その後、私は持っています次の関数:

function markerMoved(movedMarker){ 
    movedMarker.title = movedMarker.position; 
} 

私は、次の2つの問題があります。

1)前夜マーカーが最初に作成されたときに、ドラッグしないで「引っ張る」火は、実際には大したものではありませんが、実際には大きな問題はありません。

2)新しい位置は更新されず、タイトルは最初の初期位置マーカーをドラッグします。同じ結果を持つgetPosition()メソッドを試しました。

アイデアは、あなたがのaddListenerを呼び出すと、ファイルtrack.php

答えて

7

にGETリクエスト(非同期)を介して、この関数から戻ってMySQLデータベースに新しいポジションを書くことで、3番目のパラメータはする必要があります関数。関数の結果を呼び出しているので、うまく動作しません。 closures in event listenersを使用するためのAPIドキュメントを確認し、詳細情報については

google.maps.event.addListener(marker28, 'dragend', function() { markerMoved(marker28); }); 

:このようにそれを試してみてください。

関連する問題