Google Map API使用详解(二)——Google Map API中文说明
2010-12-21 12:17
Google Map API中文使用说明如下:(详见js/fGMap.js文件)
方法以及相关参数说明:
1GBrowserIsCompatible() -- 是否支持Google Map API 
2myLat – 目标位置的经度坐标,
3myLng – 目标位置的纬度坐标
4new GLatLng(myLat, myLng) -- 设置经纬度
5map.setCenter(new GLatLng(myLat, myLng), 14) -- 设置地图默认的中心点经纬度 
6new GLatLng(myLat, myLng) -- 设置中心点的经纬度
714 -- 地图的默认缩放比例大小值,范围为1 - 18 
8new ElementById("GoogleMap")) -- 获取显示的地图容器
9map.setMapType(G_NORMAL_MAP); -- 设置显示地图的类型
可选值:
a. G_NORMAL_MAP -- 默认地图样式
b. G_SATELLITE_MAP -- Google Earth卫星地图
c. G_HYBRID_MAP -- 混合模式地图
10new GIcon(G_DEFAULT_ICON) -- 设置标记样式
11addControl() -- 给地图添加控件
常用的可选控件:
a. new GLargeMapControl() -- 大的地图缩放级别控件
b. new GOverviewMapControl() -- 地图缩略图控件
c. new GScaleControl() -- 比例尺控件
d. new GMapTypeControl() -- 地图类形选择控件
12免费公司取名网enableDoubleClickZoom() -- 双击(鼠标右键)放大/(鼠标左键)缩小地图比例
13ableScrollWheelZoom() -- 滚动滑轮方法(向前)放大/(向后)缩小地图比例
14enableContinuousZoom() -- 允许连贯改变地图比例
15createMarker(latlng) -- 自定义方法
16new GMarker(latlng) -- 在地图中设置标签,参数latlng -- 标签的坐标
17Event.addListener(marker,event,function) -- 给标签设置事件
marker -- 标签对象
event -- 事件名称
function -- 时间的处理函数
18openInfoWindowHtml(latlng, myHtml) -- 将信息框添加到标签上
latlng -- 标签坐标
myHtml -- 提示信息的HTML字符串
19)获取地图中心坐标:
javascript:void(prompt('中心坐标',Map().getCenter()));
通过以上说明我们可以通过实例MyApp1.html来改变我们的方法或者参数。
Google Map API使用详解(六)——Google Map API Key的解读和使用技巧
2010-12-21 12:19
所谓API密钥API Key),其实就是一个字符串,在使用script标签导入API类库的时候作为请求参数传给谷歌地图的服务器,形式就是:
<script src="le/maps?file=api&v=2&key=YOUR_API_KEY" type="text/javascript">
</script>
使用谷歌地图API的第一步就是要注册一个API密钥,谷歌的API使用条款对这个密钥的用途有很正式的说明,其实总结起来也很简单:
1、谷歌地图API提供的服务是免费的,对于通过API正常使用谷歌地图的网站基本没有任何限制;
2、说基本没有限制的原因是,谷歌对每个API密钥对应的网站所作的地理编码/地址解析请求次数有限制,每天(24小时)的请求次数不能超过15000次;
3、不能使用谷歌地图从事任何非法的行为,否则谷歌应该能够通过这个密钥阻止你的网站使用谷歌地图;
4、更简单的说,谷歌使用这个密钥保证能够对所有API用户/网站进行区分,方便必要的时候对超常规用户进行阻拦。
对于地址解析的次数限制,一般来说不会有什么影响,这里主要说API密钥。
对于API密钥,还有几点需要注意:
1、如果使用API的页面还没有发布,只是在本地调试,可以不用密钥,随便用个字符串代替就可以了;
2API密钥只对网站目录或者域有效,所以,虽然你是使用同一个谷歌帐号登录后注册的密钥,但是,对不同域的网页,需要用这些域分别注册不同的密钥,对于同一个域里的页面,直接拿你网站的域名注册一个,在这个域里的所有页面就可以通用这个密钥了。
那么就产生了一个关于API密钥的实际问题:
同一个页面需要支持不同的域名,最简单的就是公司有一个cn域名,也有一个com域名,这该怎么办?
其实,对于这种问题,可以提前先注册好不同域名对应的密钥,存在你的JS变量里面,页面加载时通过window.location得到当前请求页面的域名,通过这个域名再到对应的密钥,然后使用script动态加载的方法加载地图API,用代码描述就是:
//事先已经注册好的密钥
var keyMapping = {host1:key1, host2:key2};
//实际请求页面的域名
var requestHost = window.location.hostname;
//到需要的密钥
var key = keyMapping[requestHost];
//如何检测网速构造加载APIscript url
var apiUrl = "le/maps?file=api&v=2&key=" + key;
//使用script动态加载的方法加载地图API
var scriptTag = ateElement('script');
scriptTag.setAttribute('type', 'text/javascript');
scriptTag.setAttribute('src', apiUrl);
ElementsByTagName('head')[0].appendChild(scriptTag);
使用这段代码时,需要注意把你自己的JS代码中对API的各个类的调用放在API加载完成以后,详细的解释可以先搜索一下著名的DomReady的问题,三言两语还是说不清楚的。
Google Map API使用详解(三)——Google Map基本常识(上)
2010-12-21 12:13
1、简介
任何 Google Maps API 应用程序中的基础元素都是地图本身。本文档讨论 GMap2 基础对象的用法和地图操作的基础知识。
 
2Google Map柯震东萧亚轩被曝分手Hello, World
开始学习 Google 地图 API 最简单的方式是看一个简单的示例。网页MyTest1.html显示了以中国人民大学为中心的400x400 的地图。
即使在此简单的示例中,也需要注意五点:
1)使用 script 标签包含 Google 地图 API JavaScript 
2)创建名为mapContainer”的 div 元素来包含地图。
3)编写 JavaScript 函数创建map”对象。
4)将地图的中心设置为指定的地理点。
5)从 body 标签的 onload 事件初始化地图对象。
下面说明了这些步骤。
 
3、加载 Google Map API
<script src=le/maps?file=api&v=2&key=YOUR_API_KEY&sensor=true_or_false type="text/javascript">
</script>
le/maps?file=api&v=2&key=YOUR_API_KEY网址指向包含使用 Google 地图 API 所需所有符号和定义的 JavaScript 文件的位置。您的页面必须包含指向此网址的 script 标签,使用注册 API 时收到的密钥。在此示例中,该密钥显示为YOUR_API_KEY”。请注意,我们也传递 sensor 参数以指明此应用程序是否使用传感器来确定用户位置。在此示例中,我们将其设为变量true_or_false”以强调您必须显式地将此值设置为 true  false
 
4、地图 DOM 元素
<div id="mapContainer" ></div>
要让地图在网页上显示,必须为其留出一个位置。通常,我们通过创建名为 div 的元素并在浏览器的文档对象模型(DOM)中获取此元素的引用执行此操作。
在上述示例中,我们定义名为mapContainer”的 div,并使用样式属性设置其尺寸。地图会自动使用容器尺寸调整自身的尺寸,除非使用构造函数中的 GMapOptions 显式地为地图指定尺寸。赫子铭个人资料图片
 
5GMap2 --基本对象
var map = new ElementById("mapContainer"));
GMap2 类是表示地图的 JavaScript 类。此类的对象在页面上定义单个地图(可以创建此类的多个实例,每个对象将在页面上定义一个不同的地图)。我们使用 JavaScript new 操作符创建此类的一个新实例(对象)。
当创建新的地图实例时,在页面中指定一个 DOM 节点(通常是 div 元素)作为地图的容器。HTML 节点是 JavaScript document 对象的子对象,而且我们通过 ElementById() 方法获得该元素的引用。
此代码定义了一个变量(名为map),并将新GMap2对象赋值给该变量。函数GMap2() 称为构造函数,其定义如下所示:
Google Map API使用详解(十五)——初始化GMap2对象
2010-12-21 12:12
初始化一个GMap2对象除了可以使用GMapOptions参数设置谷歌地图外,在创建GMap2对象后还可以用一些方法设置地图的一些通用属性: 
1 可以连续缩放
地图缩放的时候旧图块在新图块加载完成之前不会直接消失,图块的切换比较平滑,在网速较慢的时候这种效果会好一些。地图默认情况下不支持,建议打开这个功能。使用ableContinuousZoom() / map.disableContinuousZoom() 方法来切换。另外,需要的时候你可以使用inuousZoomEnabled()方法来探测一下地图是否支持连续缩放。
 
2四级考试多少分算过 支持滚轮缩放
使用鼠标滚轮来实现地图缩放,默认也是不支持的,建议打开。
使用ableScrollWheelZoom() / map.disableScrollWheelZoom() 方法来切换,使用map.scrollWheelZoomEnabled()方法来探测。
 
3 支持双击缩放
左键双击放大地图,默认也是不支持,建议打开。使用ableDoubleClickZoom() / map.disableDoubleClickZoom()方法切换,使用map.doubleClickZoomEnabled()方法探测。另外,右键双击缩小地图默认是支持的,没有发现地图API中有方法可以改变右键双击的属性。
 
4  支持地图拖动(默认)
按住左键拖动地图,默认是支持的。使用enableDragging/disableDragging方法切换,使用draggingEnabled()方法探测。这个估计是个比较老的方法,因为在已经有静态地图API的情况下实在想不出来有什么理由不让地图可以拖动,除非你是想临时的禁止地图可拖动。
 
5  支持信息窗口(默认)
在需要的时候地图可以弹出一个泡状的东东,在里面显示信息,默认也是支持的。使用enableInfoWindow/disableInfoWindow方法切换,使用infoWindowEnabled()方法探测。
一般情况下,这个属性让它保持默认就好了,如果你只需要在地图上标注并且不允许任何信息窗口的弹出,或者想上一个地图拖动的属性一样,需要临时性的禁止。
 
6 添加搜索栏
把地图左下角的Logo换成一个带搜索框的控件,这样你就可以在你的地图中直接使用谷歌的数据源来支持用户搜索,定制好的话简直就可以当作一个微型的地图主页来用。这个是中文API中新增的功能,以前的文章中我提到使用飞机上不能带的东西有哪些GMapOptions中的googleBarOptions属性可以来定制这个控件的。这个在地图上默认是没有添加的,所以,如果你没有使用ableGoogleBar()方法来显式的声明加上搜索栏的话,googleBarOptions也是不会起作用的。添加搜索栏反向的禁用操作是map.disableGoogleBar()