百度地图

最近单位一个项目要用到百度地图

功能非常简单

1.填写坐标,点击"在地图上搜索",显示地图,把地址带到另外一个文本框上

2.填写地址,点击"在地图上搜索",显示地图,把坐标带到另外一个文本框上

 

1.加入API库的链接

<script src="../../Resource/scripts/jquery-1.7.2.js" type="text/javascript"></script>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=1.4">
</script>

 

2.在需要嵌入百度地图的位置加上div和js

<div id="container" style="width: 100%; height: 400px;"></div>
<script type="text/javascript">
function InitMap() {
var valCoord = $("#txtCoordinate").val();//取坐标
if (valCoord == null) {
return;
}
var pointX = valCoord.split(',')[0];
var pointY = valCoord.split(',')[1];
var map = new BMap.Map("container"); //创建地图对象
map.centerAndZoom(new BMap.Point(pointX, pointY), 16); //初始化地图
var myGeo = new BMap.Geocoder();// 创建地理编码实例

if (valCoord != '请输入坐标' && valCoord != '') //优先取坐标去查询地图
{
// 根据坐标得到地址描述
myGeo.getLocation(new BMap.Point(pointX, pointY), function (result) {
if (result) {
$("#txtLocation").val(result.address);
map.addOverlay(new BMap.Marker(new BMap.Point(pointX, pointY)));
return;
}
});
}

if ($("#txtLocation").val() != '' && $("#txtLocation").val() != '请输入客户公司地址搜索在地图上的位置') //取地址去查询地图
{
// 将地址解析结果显示在地图上,并调整地图视野
myGeo.getPoint($("#txtLocation").val(), function (p) {
if (p) {
map.centerAndZoom(p, 16);
map.addOverlay(new BMap.Marker(p));
var valLngLat = p.lng + "," + p.lat;
$("#txtCoordinate").val(valLngLat);
return;
}
}, "上海");
}
}
InitMap();
</script>

 

3.文本框

<input type="text" id="txtCoordinate" name="txtCoordinate" value="请输入坐标" />

<textarea id="txtLocation" name="txtLocation" rows="1" cols="30">请输入客户公司地址搜索在地图上的位置</textarea>

 

 

4.为文本框绑定一些事件

<style type="text/css">
#container {
height: 100%;
width: 100%;
}
</style>
<script type="text/javascript">
$(function () {
$("#txtCoordinate").focus(function () {
if ($("#txtCoordinate").val() == "请输入坐标") {
$("#txtCoordinate").val("");
}
});
$("#txtCoordinate").focusout(function () {
if ($("#txtCoordinate").val() == "") {
$("#txtCoordinate").val("请输入坐标");
}
});
$("#txtLocation").focus(function () {
$("#txtCoordinate").val("");
if ($("#txtLocation").val() == "请输入客户公司地址搜索在地图上的位置") {
$("#txtLocation").val("");
}
});
});
</script>

 

posted @ 2015-11-27 10:47  番茄蛋汤  阅读(353)  评论(0编辑  收藏  举报