谷歌地图的简单使用

  • content
    {:toc}

谷歌地图的简单使用

要使用谷歌地图先申请一个谷歌账号用来获取密钥,当然这样的密钥在网上也能搜的到,不想翻墙注册的话就去搜素吧。
注意在申请谷歌地图时我遇到了手机号无法用于验证,我的解决办法是将地区改为台湾就可以了。如图:
图片1

获取密钥后,按照官方文档进行demo示例。

Demo 示例

<html>
  <head>
    <title>Simple click event</title>
    <meta name="viewport" content="initial-scale=1.0, user-scalable=no">
    <meta charset="utf-8">
    <script type="text/javascript" src="${cdn}/js/jquery-1.9.1.min.js"></script>
    <style>
      /* Always set the map height explicitly to define the size of the div
       * element that contains the map. */
      #map {
        height: 100%;
      }
      /* Optional: Makes the sample page fill the window. */
      html, body {
        height: 100%;
        margin: 0;
        padding: 0;
      }
    </style>
  </head>
<body>
<div id="map"></div>
<script>
  var myLatlng;
  var marker;
  var map ;
  var infowindow;
  function initMap() {
    myLatlng = {lat: 22.579620019918522, lng: 113.8608455657959};

    // 创建地图
    map = new google.maps.Map(document.getElementById('map'), {
      zoom: 15,
      center: myLatlng
    });

    // 创建标记
    marker =new google.maps.Marker({
        position: myLatlng,
        map: map,
        title: 'my marker'
     });

    // 创建信息窗口
    infowindow = new google.maps.InfoWindow();

    marker.addListener('click', function() {
        map.setZoom(15);
        map.setCenter(marker.getPosition());
    });

    map.addListener('click', function(e) {
        console.log("纬度是:"+e.latLng.lat()+"经度是:"+e.latLng.lng());
    });

    // marker2的点击事件
    google.maps.event.addListener(marker2, 'click', function() {
        infowindow.setContent(place.name);
        infowindow.open(map, this);
    });
}
</script>
<script async defer
src="https://maps.googleapis.com/maps/api/js?key=Your key&language=cn&callback=initMap">
</script>
  </body>
</html>

demo解释

  • 在id为map的div中创建地图实例。使用google.maps.Map的构造函数创建map对象。new google.maps.Map(document.getElementById(‘map’),{参数}}
  • myLatlng:代表地点的位置;lat—纬度,lng—经度

初始化map的参数说明

  • zoom:地图的缩放级别。
  • center : 地图的中心位置
  • scaleControl:是否使用地图的缩放控件,值为boolean型
  • rotateControl:是否使用旋转控件,值为boolean型。
  • 没写的就去谷歌地图看api吧。。。。

script链接参数说明

  • key : 在谷歌地图申请的密钥
  • language :语言设置,常用的是cn,en.可选
  • callback : 回调函数,这里是用来初始化map.可选
  • libraries :要使用的内容库。可选
  • async defer:不进行同步操作,即渲染地图的同时允许其他的加载操作。

marker创建

  • 使用google.maps.Marker创建对象,形式为: marker =new google.maps.Marker({参数:value});

marker参数说明

  • position : marker的位置,即使用Latlng作为值如 {lat: 22.579620019918522, lng: 113.8608455657959}
  • map: 所属的map地图,Map类型
  • title: 标题,String类型
  • icon: 如果值是一串String,则表示用此string作为URL的图片为marker的图片

marker的方法

  • 清除marker: 清除地图上的标记marker.setMap(null);将map设置为null即可清除。
  • marker.getPosition():获取标记的LatLng对象,即标记的位置
  • marker.addListener(‘click’, function() { //dosth }):为marker添加点击事件,其余事件列表见api
  • 。。。

map的方法

  • map.setZoom(int): 设置map的缩放参数等级
  • map.setCenter(LatLng): 设置map的中心
  • map.panTo(LatLng): 将map可视区域移动到以LatLng为中心的地方
  • map.addListener(‘click’, function(e) { //dosth }): 为map添加点击事件。事件的列表详情见api。其中参数e.latLng为获得LatLng对象,e.latLng.lat()即表点击位置的纬度。
  • 。。。。

infowindow创建

  • 使用new google.maps.InfoWindow() 创建infowindow对象,用来展示信息的窗口

infowindow的方法

  • infowindow.setContent(place.name);:用来设置窗口的内容。
  • infowindow.open(map, this);:在当前结合示例表示在此marker上打开窗口
  • 。。。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值