本文主要总结Google map API V3使用中最简单也是最常见的一些操作以及相关概念,如果需要更加详细的信息,请直接阅读Google提供的关于map的文档。

google map api v3文档链接:

英文版:https://developers.google.com/maps/documentation/javascript/reference

中文版:https://developers.google.com/maps/documentation/javascript/overlays?hl=zh-CN

1、在页面中加入Google Map服务

src="https://maps.google.com/maps/api/js?sensor=false">

其中sensor参数用于指明此应用程序是否使用传感器确定用户的位置,取值为true或false。

2、加载Google Map API

function initialize() {

var myLatlng = new google.maps.LatLng(39.9629, 116.3581);

var myOptions = {

zoom: 16,

center: myLatlng,

mapTypeId: google.maps.MapTypeId.ROADMAP

}

map = new google.maps.Map(document.getElementByIdx_x("map_canvas"), myOptions);

}

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

最后一句话是打开浏览器加载地图。

3、向地图中添加marker

function initialize() {

var myLatlng = new google.maps.LatLng(39.9629, 116.3581);

var myOptions = {

zoom: 16,

center: myLatlng,

mapTypeId: google.maps.MapTypeId.ROADMAP

}

map = new google.maps.Map(document.getElementByIdx_x("map_canvas"), myOptions);

var image='Image/webcam.png';

var marker1 = new google.maps.Marker({

position: lamyLatlngtlng[j],

map: map,

icon:image,

title:'hello,world!'

})

}

每个标记都是一个google.maps.Marker对象,在实例化时需要给定一定的配置信息,如标记的位置。

通过icon可以设定自己想显示的图标,不设置则显示Google map默认的图标。title表示鼠标放到marker

上要显示的值。

4、向地图中添加信息窗口infowindow

function initialize() {

var myLatlng = new google.maps.LatLng(39.9629, 116.3581);

var myOptions = {

zoom: 16,

center: myLatlng,

mapTypeId: google.maps.MapTypeId.ROADMAP

}

map = new google.maps.Map(document.getElementByIdx_x("map_canvas"), myOptions);

var image='Image/webcam.png';

var marker1 = new google.maps.Marker({

position: lamyLatlngtlng[j],

map: map,

icon:image,

title:'hello,world!'

})

var contentString = 'Hello World';

var infowindow = new google.maps.InfoWindow({

content: contentString

});

google.maps.event.addListener(marker, 'click', function() {

infowindow.open(map,marker);

});

}

每个信息窗口都是一个google.maps.InfoWindow对象,在实例化时需要给定一定的配置信息,如窗口中的内容,标记的位置。

其 中需要说明的是,配置信息中的content即可以是html字符串,也可以是一个dom节点。要让一个信息窗口显示出来,我们可以调用它的open方 法,并制定显示在那个Map实例对象中。注意,如果在信息窗口构造时的配置中已经制定了位置(通过position字段),那么直接使用 infoWindow.open( map ),就可以显示在地图的制定位置上。当然,我们也可以将信息窗口的显示绑定在已经在地图中的标记对象中,只需在open的第二个参数中制定标记对象即可 infoWindow.open( map, marker )。

5、事件绑定

使用google.maps.event.addListener()方法来进行事件的监听。该方法接受三个参数:一个对象,一个待侦听事件以及一个在指定事件发生时调用的函数。

(1)监听地图的缩放:

google.maps.event.addListener(map, 'zoom_changed', function() {

});

(2)标记的点击:

google.maps.event.addListener( marker, 'click', function( event) {

// 点击事件后要实现的函数;

});

(3)监听dom事件:

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

以上的基本功能都是我用到过的,当然Google map API V3的功能远远不止这些,如果还有更高的要求,请直接访问google的官方文档。

示例:

<!DOCTYPE html>

<html>

<head>

<meta name="viewport" content="initial-scale=1.0, user-scalable=no" />

<style type="text/css">

html { height: 100% }

body { height: 100%; margin: 0; padding: 0 }

#map_canvas { height: 100% }

</style>

<script type="text/javascript"

src="http://maps.googleapis.com/maps/api/js?">

</script>

<script type="text/javascript">

function initialize() {

var mapOptions = {

center: new google.maps.LatLng(23.154748, 113.337045),

zoom: 2,

mapTypeId: google.maps.MapTypeId.ROADMAP

};

var map = new google.maps.Map(document.getElementById("map_canvas"),

mapOptions);

var marker = new google.maps.Marker({

position: new google.maps.LatLng(23.154748, 113.337045),

map: map,

title:'中国赛宝实验室\n工业和信息化部电子第五研究所'

});

//marker.setMap(map);

var contentString = '中国赛宝实验室\n工业和信息化部电子第五研究所';

var infowindow = new google.maps.InfoWindow({

content: contentString

});

infowindow.open(map,marker);

google.maps.event.addListener(marker, 'click', function() {

infowindow.open(map,marker);

});

}

</script>

</head>

<body onload="initialize()">

<div id="map_canvas" style="width: 100%; height: 100%"></div>

</body>

</html>

Google map API V3的更多相关文章

  1. Google Map API V3开发(1)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  2. Google Map API V3开发(2)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  3. Google Map API V3开发(3)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  4. Google Map API V3开发(4)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  5. Google Map API V3开发(5)

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  6. Google Map API V3开发(6) 代码

    Google Map API V3开发(1) Google Map API V3开发(2) Google Map API V3开发(3) Google Map API V3开发(4) Google M ...

  7. Google Map API V3调用arcgis发布的瓦片地图服务

    由于最近项目需要用到CAD制作的地图,但之前一直使用的是用谷歌离线瓦片地图的方式,怎么样把CAD图像地图一样有缩放,移动的功能放到网页显示成了难题, 原先的谷歌地图的代码难道就不能用了?重新写一套代码 ...

  8. Google 地图 API V3 使用入门

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

  9. Google 地图 API V3 之事件

    Google官方教程: Google 地图 API V3 使用入门 Google 地图 API V3 针对移动设备进行开发 Google 地图 API V3 之事件 Google 地图 API V3 ...

随机推荐

  1. 单点登录(SSO)问题

    单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一.SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统.

  2. 3D屏保:魔方2.0版本

    一个三维魔方的屏保软件,可支持2级到72级的魔方.启动后魔方会自动旋转,并最终回到初始状态.有很多人问我这是怎么做到的,用的什么解魔方的算法,其实我自己根本就不会玩魔方,别人用技巧解魔方,我这程序中用 ...

  3. 附1 rabbitmq常用命令

    1.rabbitmq的启动和停止 rabbitmq-server (前台启动) rabbitmq-server -detached(后台启动) rabbitmqctl stop(停止) 2.查看rab ...

  4. eclipse maven 报错Could not get the value for parameter encoding for plugin execution default

    问题描述:更改默认的maven仓库路径完成后.即存maven项目或者新建maven项目的时候出现如下错误 Could not get the value for parameter encoding ...

  5. 12款程序员们最爱的Bootstrap模板

    如果你还没有开始使用Bootstrap模板,那你可真是有够OUT,这是一个帮助你快速开发的工具,Bootstrap是基于jQuery框架开发的,它在jQuery框架的基础上进行了更为个性化和人性化的完 ...

  6. 火狐浏览器Firefox不支持alt怎么

    因为HTML代码的解析不同,需要把标签文字"alt"换成"title",就可以在FireFox中正常显示了. 如下所示,IE对于alt和title均可以支持 但 ...

  7. ArcGIS高程Z值的去除方法

    在ArcGIS中,我们常用的几何类型有点.线.面.体(体,在涉及三维的情况下使用),但在这之外,可能会遇到带ZM的类型,如图所示,面ZM,它与面类似,但比面多两个字段. 在编辑中查看草图属性可看到Z值 ...

  8. ArcGIS按字段属性分割文件

    在ArcGIS中我们有时需要将一个文件安字段的属性分割成多个文件,网友总结了几乎所有的方法:http://blog.sina.com.cn/s/blog_4e87fb4c0100fcjh.html , ...

  9. libcurl 接口调用方式

    http://hi.baidu.com/tracyu1026/item/bb6d5def4292b10b570f1d48 libcurl提供了一组C语言API函数直接调用.首先需要提到的两个函数就是c ...

  10. iOS 事件传递及响应过程

    iOS 事件传递及响应过程 -->>事件到来-->>事件分发 -->>事件响应 事件( Events) 官方文档( Events(iOS)) 是这样描写叙述的: U ...