联系:手机/微信(+86 17813235971) QQ(107644445)
作者:惜分飞©版权所有[未经本人同意,不得以任何形式转载,否则有进一步追究法律责任的权利.]
因项目中要调用google地图,最近花了点时间阅读了下google map 的api,google map的使用大致如下:
1、注册使用google地图api
地址为:http://code.google.com/intl/zh-CN/apis/maps/signup.html
2、阅读google 地图api
地址为:http://code.google.com/intl/zh-CN/apis/maps/documentation/javascript/basics.html
3、测试google 地图api
(1)一个地点定位并标明位置
- 1添加JavaScript应用
<script src="http://maps.google.com/maps?file=api&v=2&sensor=true;key=ABQIAAAAEBGBYRn2zjKnkDk35kXn-BT2yXp_ZAY8_ufC3CFXhHIE1NvwkxSQ7sVn7B1Wp1t33kMiQlXQKL-t7g" type="text/javascript"></script>
note:我的key是localhost,如果其他测试请重新申请
- 主要的js函数
function load(comName, comAddress, comPhone, dimensionality, longitude) { //加载地图
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl()); //放大缩小
map.addControl(new GMapTypeControl()); //地图种类
map.enableScrollWheelZoom(); //启用鼠标滚轮
var point = new GLatLng(dimensionality, longitude); // 位置
map.setCenter(point, 14); //地图坐标 三个参数分别为 "纬度" "经度" "比例尺"
function createMarker(point, address, name, tel) { //创建标记内容及标记的鼠标事件
var marker = new GMarker(point);
var html = '<div style="font-size:10px;">' +
'<a >公司名称:' + name + '</a><br/>' +
'<a >公司地址:' + address + '</a><br/>' +
'<a >联系电话:' + tel + '</a>' +
'</div>';
GEvent.addListener(marker, "mouseover", function () {
marker.openInfoWindowHtml(html);
});
GEvent.addListener(marker, "mouseout", function () {
marker.closeInfoWindow();
});
GEvent.addListener(marker, "click", function () {
map.setCenter(point, 16);
//marker.openInfoWindowHtml(html);
});
return marker;
}
map.addOverlay(createMarker(point, comAddress, comName, comPhone)); //加入标记
}
else {
alert("您的浏览器不支持Google地图,请升级到最新版再尝试");
}
}
参数说明:
公司名称comName
公司地址comAddress
公司电话comPhone
公司维度 dimensionality
公司经度 longitude
- 放置地图的html位置
<div id="map" style="width: 700px; height: 300px"></div>
- js调用
-
$(document).ready(function () { load('飞飞','温州大学','13736325515',27.924806,120.699492); });
- js代码
function load(dimensionality, longitude) { //加载地图
if (GBrowserIsCompatible()) {
var map = new GMap2(document.getElementById("map"));
map.addControl(new GSmallMapControl()); //放大缩小
map.addControl(new GMapTypeControl()); //地图种类
map.enableScrollWheelZoom(); //启用鼠标滚轮
var point = new GLatLng(dimensionality, longitude); // 位置
map.setCenter(point, 14); //地图坐标 三个参数分别为 "纬度" "经度" "比例尺"
return map;
}
}
function createMarker(map,point, address, name, tel) { //创建标记内容及标记的鼠标事件
var marker = new GMarker(point);
var html = '<div style="font-size:12px;">' +
'<a >公司名称:' + name + '</a><br/>' +
'<a >公司地址:' + address + '</a><br/>' +
'<a >联系电话:' + tel + '</a>' +
'</div>';
GEvent.addListener(marker, "mouseover", function () {
marker.openInfoWindowHtml(html);
});
GEvent.addListener(marker, "mouseout", function () {
marker.closeInfoWindow();
});
GEvent.addListener(marker, "click", function () {
map.setCenter(point, 16);
});
return marker;
}
function Add_Marker(map,comName, comAddress, comPhone, dimensionality, longitude) {
var point = new GLatLng(dimensionality, longitude); // 设置标记
map.addOverlay(createMarker(map,point, comAddress, comName, comPhone)); //加入标记
}
- c#调用
string a = @" var map = load(27.924806, 120.699492); Add_Marker(map,'温州大学', '茶山', '13736325515', 27.924806, 120.699492); Add_Marker(map,'温州大学111', '茶山22', '13736325515',27.925526, 120.700479);"; Page.ClientScript.RegisterStartupScript(this.GetType(), "ab", a, true);
note:
在一个定位的js中,也可以采用添加多个
var point1 = new GLatLng(27.925526, 120.700479); map.addOverlay(createMarker(point1, 'comAddress', 'comName', 'comPhone'));

