1

したい:

  • グーグルマップに長方形を描く
  • 最大で四角形にある
  • マウスの移動時にマウスの現在位置を表示する

だから、私はこのコードを思いついた - http://jsfiddle.net/mark69_fnd/vBwf6/4/前の四角形を破棄し、新しい四角形への参照を保存してサブスクライブするために、インスタンスのrectanglecompleteイベントに サブスクライブしますDrawingManager四角形の mousemove イベント。

問題は、mousemoveイベントがトリガーされないことです。

何が間違っていて、どうすれば修正できますか?

ありがとう。

4

1 に答える 1

7

これは、マップのコンテナの左上隅に関連するピクセル オフセットによって GPS 座標を与える関数です。

function getLatLngByOffset( map, offsetX, offsetY ){
    var currentBounds = map.getBounds();
    var topLeftLatLng = new google.maps.LatLng( currentBounds.getNorthEast().lat(),
                                                currentBounds.getSouthWest().lng());
    var point = map.getProjection().fromLatLngToPoint( topLeftLatLng );
    point.x += offsetX / ( 1<<map.getZoom() );
    point.y += offsetY / ( 1<<map.getZoom() );
    return map.getProjection().fromPointToLatLng( point );
}

マップの div 要素にイベント リスナーを追加'onmousemove'し、div の左上隅に関連するマウス位置を渡します。

更新デモChromeでテスト済み)

于 2012-04-28T14:57:07.763 に答える