google
登录进去 ,如果有google账号就直接登录,如果没有就注册一下
进去之后大概这个样子
点击左边的Google地图,然后会看到有很多api,选择你需要使用的
这里我们选择Maps JavaScript API
点击进去启用就可以
然后我们需要记住我们的api key
可以在凭据里面找到

下面我们来在我们的页面上添加一个google地图

<!DOCTYPE html>
<html>
<head>
<script src="http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=TRUE_OR_FALSE"></script><script>
function initialize()
{var mapProp = {center:new google.maps.LatLng(51.508742,-0.120850),zoom:5,mapTypeId:google.maps.MapTypeId.ROADMAP};var map=new google.maps.Map(document.getElementById("googleMap"), mapProp);
}google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="googleMap" style="width:500px;height:380px;"></div>
</body>
</html>

效果图

首先是googlemap api
跟之前的jquery类似,google api也需要引用

<script src="http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=TRUE_OR_FALSE"></script>

注意修改两个地方
key=YOUR_API_KEY 可以在你自己申请的goolge map里找到,替换成你自己的api
sensor指明应用程序是否使用一个传感器 (类似 GPS 导航) 来定位用户的位置,参数值可以设置为 true 或者 false
如果你的应用是安全的HTTP(HTTPS:HTTP Secure)应用,你可以使用 HTTPS 来加载 Google 地图 API,

<script src="https://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=TRUE_OR_FALSE"></script>

Map() 构造器创建了一个新的地图并插入到指定的HTML元素中(一般是<div> 元素)
new google.maps.Map(HTMLElement,MapOptions)
HTMLElement 规定要把地图放置在哪个 HTML 元素中
MapOptions 带有地图初始化变量/选项的 MapOptions 对象//就是我们之前定义的地图属性

在上面的案例中

function initialize()
{var mapProp = {center:new google.maps.LatLng(51.508742,-0.120850),zoom:5,mapTypeId:google.maps.MapTypeId.ROADMAP};var map=new google.maps.Map(document.getElementById("googleMap"), mapProp);
};

一般情况下,我们都会在一个初始化函数中定义好map属性,然后通过调用初始化函数实现接入地图
mapProp在这里就是我们自定义的地图属性,可以看到里面有
center
中心点,指定了地图的中心,该中心通过坐标(纬度,经度)在地图上创建一个中心点
zoom
缩放级数,zoom:0,显示了整个地球地图的完全缩放,zoom后面的数越大,显示的范围越小,看的越详细
mapTypeId
地图的初始类型,包括如下四种类型
google.maps.MapTypeId.HYBRID:显示卫星图像的主要街道透明层
google.maps.MapTypeId.ROADMAP:显示普通的街道地图
google.maps.MapTypeId.SATELLITE:显示卫星图像
google.maps.MapTypeId.TERRAIN:显示带有自然特征(如地形和植被)的地图

定义完之后,通过刚才介绍的Map创建函数生成我们的地图
var map=new google.maps.Map(document.getElementById(“googleMap”), mapProp);
参数应该比较好理解,document.getElementById(“googleMap”),在之后的body部分里,我们可以通过id绑定来显示地图
mapProp就是上一步定义的地图对象

initialize函数写好后,还要有一个调用条件

google.maps.event.addDomListener(window, 'load', initialize);

加载地图,窗口(window)载入后(load)通过执行 initialize() 函数(刚才定义的地图初始化函数)来初始化 Map 对象,这样可以确保在页面完全载入后再加载 Google 地图

<div id="googleMap" style="width:500px;height:380px;"></div>//我们可以在 <div> 元素中设置地图的大小,div里面style对应的大小就是地图的大小

通常 Google 地图使用于 <div> 元素中,令div的id为刚才的googleMap实现在div里显示地图

上面一种是预先加载好google的api,同样我们也可以在页面完全载入后再加载 Google 地图 API

<!DOCTYPE html>
<html>
<head><script>
function initialize()
{var mapProp = {center:new google.maps.LatLng(51.508742,-0.120850),zoom:5,mapTypeId:google.maps.MapTypeId.ROADMAP};var map=new google.maps.Map(document.getElementById("googleMap"), mapProp);
}function loadAPI()
{var script = document.createElement("script");//创建一个javascript的节点script.type = "text/javascript";//类型script.src = "http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=TRUE_OR_FALSE&callback=initialize";//根之前一样,替换掉你的内容document.body.appendChild(script);
}
window.onload = loadAPI;google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>
<body>
<div id="googleMap" style="width:500px;height:380px;"></div>
</body>
</html>

跟刚才的区别主要是少了一个<script src></script>,多了一个loadAPI函数

function loadAPI()
{var script = document.createElement("script");//创建一个javascript的节点其实就是<script src></srcipt>script.type = "text/javascript";//类型,其实不写也可以script.src = "http://maps.googleapis.com/maps/api/js?key=YOUR_API_KEY&sensor=TRUE_OR_FALSE&callback=initialize";//跟之前一样,替换成 你的内容document.body.appendChild(script);
}
window.onload = loadAPI;//页面加载时初始化

使用了 window.onload 来实现页面载入时加载 Google 地图 ,loadAPI() 函数创建了加载 Google 地图 API <script> 标签。此外在标签的末尾添加了 callback=initialize参数,initialize()作为回调函数会在API完全载入后执行,效果都一样,还是根据个人喜欢选择

再额外简单补充一点
Map()
这个本来是在后面需要使用上的,但我在这里简单说明一下
var map=new google.maps.Map(document.getElementById(“googleMap”), mapProp);
生成了个map,绑定的是我们map对象,可以通过map.function()来进一步实现以下功能

fitBounds(LatLngBounds)
将地图视层尽可能大的设定在给定的地理边界内,无返回值,通常搭配getBounds

getBounds()
返回当前视口的西南纬度/经度和东北纬度/经度(LatLng,LatLng )
通过map.fitBounds(layer.getBounds());来实现地图视层的调整(layer会在之后讲到,可以是标记,也可以是一个点)

getCenter()
返回地图的中心的纬度/经度,(LatLng)

getDiv()
返回包含地图的 DOM 对象
刚才试了一下,返回[object HTMLDivElement]

getHeading()
返回航拍图像的罗盘航向度数(支持 SATELLITE 和 HYBRID 地图类型)(number)

getMapTypeId()
返回当前地图类型,跟先前提到的对应( hybrid roadmap satellite terrain )

getProjection()
返回当前 Projection(投影)。

getStreetView()
返回绑定到地图的默认的 StreetViewPanorama。

getTilt()
返回航拍图像的入射角度数(支持 SATELLITE 和 HYBRID 地图类型)。

getZoom()
返回地图的当前缩放级别(number,0,1,2,3…)

panBy(xnumber,ynumber)
通过以像素计的给定距离改变地图的中心,无返回值

panTo(LatLng)
改变地图的中心为给定的 LatLng,无返回值

panToBounds(LatLngBounds)
将地图平移所需的最小距离以包含给定的 LatLngBounds,无返回值,同样也可以跟上面getBounds搭配

setCenter(LatLng)
改变地图的中心为给定的 LatLng,无返回值,我个人不知道它和panTo有什么明显的区别,感觉上差不多

setHeading(number)
设置航拍图像的罗盘方向(以度为单位进行测量)基本方向为北方,无返回值

setMapTypeId(MapTypeId)
改变要显示的地图类型,无返回值

setOptions(MapOptions)
无返回值

setStreetView(StreetViewPanorama)
绑定一个 StreetViewPanorama 到地图上,无返回值

setTilt(number)
置航拍图像的入射角度数(支持 SATELLITE 和 HYBRID 地图类型)无返回值

setZoom(number)
无返回值

Map() 的事件
bounds_changed
当可视区域范围更改时会触发此事件。

center_changed
当地图 center(中心)属性更改时会触发此事件。

click
当用户点击地图(但不是点击标记或信息窗口)时会触发此事件MouseEvent
dblclick
当用户双击地图时会触发此事件。请注意,触发此事件前还会触发点击事件MouseEvent

drag
当用户拖动地图时会反复触发此事件。

dragend
当用户停止拖动地图时会触发此事件。
dragstart
当用户开始拖动地图时会触发此事件。

heading_changed
当地图 heading(方向)属性更改时会触发此事件。

idle
当地图在平移或缩放之后变为闲置状态时会触发此事件。

maptypeid_changed
当 mapTypeId 属性更改时会触发此事件。

mousemove
只要用户的鼠标在地图容器上移动,就会触发此事件MouseEvent

mouseout
当用户的鼠标从地图容器上退出时会触发此事件MouseEvent

mouseover
当用户的鼠标进入地图容器时会触发此事件MouseEvent

projection_changed 当投影更
改时会触发此事件。

resize
当地图(div)更改尺寸时会触发此事件。

rightclick
当用户右击地图时会触发此事件 MouseEvent

tilesloaded
当可见图块载入完成后会触发此事件。

tilt_changed
当地图 tilt(倾斜)属性更改时会触发此事件。

zoom_changed
当地图 zoom(缩放)属性更改时会触发此事件。

从零开始学google地图API(1)--获取api_key并显示google地图相关推荐

  1. 【高德地图API】从零开始学高德JS API(一)地图展现——仙剑地图,麻点图,街景,室内图...

    原文:[高德地图API]从零开始学高德JS API(一)地图展现--仙剑地图,麻点图,街景,室内图 摘要:关于地图的显示,我想大家最关心的就是麻点图,自定义底图的解决方案了吧.在过去,marker大于 ...

  2. 转载:高德地图API学习 从零开始学高德JS API(一)地图展现

    原文地址:https://www.cnblogs.com/milkmap/p/3687855.html [高德地图API]从零开始学高德JS API(一)地图展现--仙剑地图,麻点图,街景,室内图 摘 ...

  3. 【高德地图API】从零开始学高德JS API(四)搜索服务——POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索

    原文地址为: [高德地图API]从零开始学高德JS API(四)搜索服务--POI搜索|自动完成|输入提示|行政区域|交叉路口|自有数据检索 摘要:地图服务,大家能想到哪些?POI搜素,输入提示,地址 ...

  4. 【高德地图API】从零开始学高德JS API(三)覆盖物——标注|折线|多边形|信息窗口|聚合marker|麻点图|图片覆盖物

    原文地址为: [高德地图API]从零开始学高德JS API(三)覆盖物--标注|折线|多边形|信息窗口|聚合marker|麻点图|图片覆盖物 摘要:覆盖物,是一张地图的灵魂.有覆盖物的地图,才是完整的 ...

  5. 谷歌离线地图Api附获取教程

    三版离线Api下载链接:https://pan.baidu.com/s/1ei6tyLKTHMIGdDuowqQW6Q 提取码:x1va GoogleMapAPIV3来自: https://www.c ...

  6. python批量爬取小网格区域坐标系_Python爬虫实例_利用百度地图API批量获取城市所有的POI点...

    上篇关于爬虫的文章,我们讲解了如何运用Python的requests及BeautifuiSoup模块来完成静态网页的爬取,总结过程,网页爬虫本质就两步: 1.设置请求参数(url,headers,co ...

  7. php 百度地图api获取经纬度,调用百度地图API接口获取地铁站的经纬度信息

    今天我们来看一下,如何通过百地图API来获取地点的经纬度.首先百度地图提供了强大的API接口,我们可以通过调用它来实现目的.这是网址:https://lbsyun.baidu.com/.首先想要调用A ...

  8. 【python】python利用百度地图API:获取经纬度、地图撒点

    本文目的: python通过百度地图API,获取所给地址的经纬度,并且在百度地图上进行撒点. 另:百度地图API功能强大,如: GPS功能(单个点沿线运动). 信息窗口示例(添加纯文字的信息窗口). ...

  9. Python3调用百度地图API接口获取结构化地址

    在实际应用中,我们也许会有这样的需求,输入一个地名,就能够知道这个地方的准确地址.例如输入"清华大学",我们就可以知道清华大学在北京的哪个区哪条道路.正好百度地图开放平台服务提供了 ...

最新文章

  1. 《attention is all you need》解读
  2. EWORD 0511
  3. 阿里淘系程序员“开源”内部年度技术总结,还把P9大佬喊出来教你“打怪升级”...
  4. 债务偿还方法 分期偿还法
  5. VB课本基础知识总结
  6. PowerDesigner导入SQL脚本
  7. 大量更新后数据膨胀_段合并的原理探寻
  8. Web框架——Flask系列之自定义过滤器详解(五)
  9. python怎么把列表转换成字符串_如何将字节列表(unicode)转换为Python字符串?
  10. 人民币金额大写转小写
  11. 合并果子问题(贪心算法)
  12. 静态页面通过AJAX+asp实现数据查询功能
  13. 如何删除“我的电脑”、“此电脑”中坚果云图标--三种方法(2020年的可行方案)
  14. 6.4输入系统-模拟输入系统驱动
  15. Hutool - 对于网络的一些方法和增强
  16. tp路由器桥接成功无法上网怎么办
  17. 玩《刀塔传奇》,玩的就是一种策略
  18. RYU实战,REST API流表控制(2)
  19. Mysql—时间戳的转换
  20. Portainer容器可视化工具

热门文章

  1. 世事无常,知足常乐!
  2. 2021-06-01Bean for Mac(专业文字处理器)
  3. 2012中国互联网哈哈榜之1:十大网络流行语
  4. 华为荣耀是待机之王、性能之王、分享之王,我们更希望他是平民之王
  5. iOS图像处理之画圆角矩形
  6. 制作Windows XP万能克隆镜像
  7. web网站java实现QQ第三方登录
  8. Linux小小白入门教程(十二):移动/复制命令
  9. 《鬼武者3》全BOSS攻略方法
  10. 散射噪声仿真理论和实践(理论篇2)