как получить смещение мыши (слева и сверху на картах), когда я нажимал карты Google - PullRequest
1 голос
/ 13 марта 2010

было бы так:

<div id="map_canvas" style="width: 500px; height: 300px;float:left;"></div>

левый: (<= 300) верх: (<= 500) </p>

    GEvent.addListener(map, "click", function() {
      //aFn()
    });

я хочу сделать ломаную линию, когда нажму:

var polyline = new GPolyline([onePoint,twoPoint], "#ff0000", 5);
                            map.addOverlay(polyline);

спасибо

1 Ответ

0 голосов
/ 13 марта 2010

Я думаю, что вы можете захотеть проверить метод fromLatLngToContainerPixel () , который вычисляет пиксельные координаты данной географической точки в элементе DOM, который содержит карту на странице.

Вы можете попробовать следующий пример. Нажмите в любом месте на карте, чтобы получить координаты контейнера:

<!DOCTYPE html>
<html> 
<head> 
   <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
   <title>Google Maps fromLatLngToContainerPixel Demo</title> 
   <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false" 
           type="text/javascript"></script> 
</head> 
<body onunload="GUnload()"> 

   <div id="map_canvas" style="width: 500px; height: 300px;"></div> 

   <script type="text/javascript"> 

   if (GBrowserIsCompatible()) {
      var map = new GMap2(document.getElementById("map_canvas"));

      map.setCenter(new GLatLng(39.00, -77.00), 10);

      GEvent.addListener(map, "click", function(overlay, latlng) {
          alert(map.fromLatLngToContainerPixel(latlng).x + ', ' +
                map.fromLatLngToContainerPixel(latlng).y)
      });
   }
   </script> 
</body> 
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...