拖动时如何获取光标位置?

时间:2012-05-10 00:39:39

标签: javascript html google-maps

我正在使用Google地图v3。 我是java脚本的新手。 拖动时(拖动之前和之后)有谁知道如何在网页浏览器上获取光标位置? 请教我。

2 个答案:

答案 0 :(得分:0)

我最好的选择是跟踪地图中心点(纬度,经度)的移动。拖动事件似乎不提供地图上的鼠标位置。

查看此处:http://jsfiddle.net/Hfu8D/

<!DOCTYPE html>
<html>
  <head>
    <style type="text/css">
      html, body, #map_canvas { margin: 0; padding: 0; height: 100% }
    </style>
    <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?sensor=false"></script>
    <script type="text/javascript">
      var map;
      var mapOptions = { center: new google.maps.LatLng(0.0, 0.0), zoom: 2,
        mapTypeId: google.maps.MapTypeId.ROADMAP };

      function initialize() {
        map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);

        google.maps.event.addListener(map, 'dragstart', function(event) {
          document.getElementById("start").value = map.getCenter();
        });

        google.maps.event.addListener(map, 'dragend', function(event) {
          document.getElementById("end").value = map.getCenter();
        });


      }
      google.maps.event.addDomListener(window, 'load', initialize);
    </script>
  </head>
  <body>
    start: <input id="start" size="30"><br>
    end: <input id="end" size="30">
    <div id="map_canvas"></div>
  </body>
</html>

答案 1 :(得分:0)

您可以将mousemove事件用于地图,并添加一个事件侦听器,以便在光标移动时实时更新文本框(或任何其他元素)。

这是一个例子(来自Mia的JS小提琴):

http://jsfiddle.net/76VLh/3/