仅在google maps初始化加载后启动脚本

时间:2012-09-05 18:35:16

标签: javascript google-maps

我正在编写javascript代码以使用google api地图的坐标填充字段。 然而问题是谷歌地图的初始化

<script type="text/javascript">

  var coord,mapOptions,map;
  function initialize() {
    coord = new google.maps.LatLng(-25.363882, 131.044922);
    mapOptions = { zoom: 4, center: coord , mapTypeId: google.maps.MapTypeId.ROADMAP};
    map = new google.maps.Map(document.getElementById('map_canvas'), mapOptions);
 }

 function getBounds(map,currentv)
 {
   currentv[0] = map.getCenter().lat();
   currentv[1] = map.getCenter().lng();
   return currentv;
 }
 </script>
在所有其他代码加载后,发生了(因为我理解它;我刚刚开始使用js)。

<script>
  if (map != undefined){
    currentv = getBounds(map,currentv);
    console.log("Debug: lat "+currentv[0]);
    document.write('<input type="text" name="latitude" value="'+ currentv[0] +'" />');
  } 
</script>

所以下面的某个地方是这个代码填充字段但它在initialize()之前加载;在它不再运行之后呢?

我该如何解决这个问题?

编辑:(添加了我遗漏的事件监听器)

google.maps.event.addListener(map, 'bounds_changed', function() { window.setTimeout(function() { 

map.panTo(marker.getPosition());
map.setZoom(4);
getBounds(map,currentv); 

}, 3000); });

0 个答案:

没有答案