Как начать демонстрацию GMaps с акцентом на клавиатуре? - PullRequest
0 голосов
/ 04 октября 2010

Я смотрю на этот пример GMaps, и я хотел бы, чтобы он начинался с фокуса клавиатуры (чтобы я мог перемещаться с помощью клавиш со стрелками и '+' и '-' для увеличения), есть ли способ?

Пример кода:

<!DOCTYPE html> 
<html> 
<head> 
<meta name="viewport" content="initial-scale=1.0, user-scalable=no" /> 
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
<style type="text/css"> 
  html { height: 100% }
  body { height: 100%; margin: 0px; padding: 0px }
  #map_canvas { height: 100% }
</style> 
<title>Google Maps JavaScript API v3 Example: Map Simple</title> 
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script> 
<script type="text/javascript"> 
      function initialize() {
    var myLatlng = new google.maps.LatLng(-34.397, 150.644);
    var myOptions = {
      zoom: 8,
      center: myLatlng,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
  }
</script> 
</head> 
<body onload="initialize()"> 
  <div id="map_canvas"></div> 
</body> 
</html> 

Ответы [ 2 ]

1 голос
/ 29 марта 2011

Возможно, вы уже нашли ответ, но все равно оставляете мое решение здесь для справки.У меня была та же проблема, и я исправил ее с помощью jQuery:

  $(document).keyup(function(event) {
    var offset = 128;
    switch(event.keyCode) {
      case 37: //leftArrow
        map.panBy(-offset,0);
        break;
      case 38: //upArrow
        map.panBy(0,-offset);
        break;
      case 39: //rightArrow
        map.panBy(offset,0);
        break;
      case 40: //downArrow
        map.panBy(0,offset);
        break;
      case 189: //-
        map.setZoom(map.getZoom()-1);
        break;
      case 187: //+
        map.setZoom(map.getZoom()+1);
        break;
    }
  });

И у меня есть keyboardShortcuts: false на карте MapOptions .

0 голосов
/ 31 марта 2011

Похоже, ответ: это невозможно, используя только javascript.

...