ゞGoogle Map - 毞記 - 2 - GoogleMap事件ゞ

本文介绍使用Google Maps JavaScript API v3实现地图事件处理的方法,包括用户界面事件和MVC状态更改事件。示例展示了如何为标记添加点击事件以及如何响应地图焦距变化。

地图事件

<!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"/>
<title>Google Maps JavaScript API v3 Example: Event Simple</title>
<link href="http://code.google.com/apis/maps/documentation/javascript/examples/default.css" rel="stylesheet" type="text/css" />
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
  var map;
  function initialize() {
	//GoogleMap事件分为2种
	//用户界面事件
	//Google Maps API 中的一些对象旨在对用户事件(例如鼠标事件或键盘事件)作出响应。google.maps.Marker 对象可以侦听以下用户事件,例如:
	//'click','dblclick','mouseup','mousedown','mouseover','mouseout'
	//MVC 状态更改
	//MVC 对象通常都有相应的状态。只要更改了对象的属性,那么,API 就会触发已更改该属性的事件
	//MVC 事件不在它们的事件中传递参数。您可能需要通过调用该对象上相应的 getProperty 方法,检查在 MVC 状态更改中更改的属性。
    var myLatlng = new google.maps.LatLng(-25.363882,131.044922);
    var myOptions = {
      zoom: 4,
      center: myLatlng,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);

	//添加焦距改变事件
    google.maps.event.addListener(map, 'zoom_changed', function() {
      setTimeout(moveToDarwin, 1500);
    });

    var marker = new google.maps.Marker({
        position: myLatlng, 
        map: map, 
        title:"Hello World!"
    });
	//添加点击事件
    google.maps.event.addListener(marker, 'click', function() {
      map.setZoom(8);
    });
  }

  function moveToDarwin() {
    var darwin = new google.maps.LatLng(-12.461334, 130.841904);
    map.setCenter(darwin);
  }

</script>
</head>
<body onload="initialize()">
  <div id="map_canvas"></div>
</body>
</html>

 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值