如何把地图导航添加到网站中【标注接口】_网际猎人_百度空间

标注接口(EZMarker API)

在很多时候,您需要您的用户标出一个位置,比如:一个房地产网站,用户在登记新楼盘的时候,就需要在地图上标出这个楼盘的位置,这个时候就可以用到本接口。

地图标注接口(EZMarker API)是我要地图网(51ditu.com)新推出的地图标注接口,利用该接口,您就可以轻松的实现在地图上标注位置、采集位置信息等操作。如图所示案例:

JavaScript

接口方式

{dy}步:引入JS

<script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>

<script language="javascript" src="http://api.51ditu.com/js/ezmarker.js"></script>

第二步:开始使用

显示标注接口

调用标注接口的值

如果您希望自己编写脚本,来访问和处理标注接口中的值,那么标注接口提供了相应的方法和事件来满足您的需求。

代码示例如下:

<table>

<tr><td colspan='2'>如何获取标注接口的值</td></tr>

<tr><td>经度</td><td><input type="text" id="x" name="x"></td></tr>

<tr><td>纬度</td><td><input type="text" id="y" name="y"></td></tr>

<tr><td>比例尺级别</td><td><input type="text" id="z" name="z"></td></tr>

</table>

<script language="JavaScript">

<!--

//setMap是ezmarker内部定义的接口,这里可以根据实际需要实现该接口

function setMap(point,zoom)

{

document.getElementById("x").value=point.getLongitude();

document.getElementById("y").value=point.getLatitude();

document.getElementById("z").value=zoom;

}

var ezmarker = new LTEZMarker("pos");

LTEvent.addListener(ezmarker,"mark",setMap);//"mark"是标注事件

//-->

</script>

为标注接口指定城市

如果您希望在使用标注接口的时候,标注接口只显示指定城市的地图,或着说默认为您指定城市的地图,而不是全国地图,您可以通过以下代码示例实现该功能。

为标注接口指定默认城市,如果没有指定,则默认为全国地图。<br>

在用户没有标注之前,用户选择哪个城市作为标注接口默认显示城市都可以。<br>

但当用户标注后,标注接口显示的地图将是用户标注时的地图。

<p>

请选择城市:<br>

<input onclick="javascript:setCity();" type="radio" name="city" value="beijing">北京<br>

<input onclick="javascript:setCity();" type="radio" name="city" value="shanghai">上海<br>

<input onclick="javascript:setCity();" type="radio" name="city" value="tianjin">天津<br>

<input onclick="javascript:setCity();" type="radio" name="city" value="chongqing">重庆<br>

<br>

<script language="JavaScript">

<!--

var ezmarker = new LTEZMarker("ezmarker");

function setCity(){

var collection;

collection = document.all["city"];

for (i=0;i<collection.length;i++) {

if (collection[i].checked){

var c = collection[i].value;

ezmarker.setDefaultView(c,7);

break;

}

}

}

//-->

</script>

标注接口结合Form

如果您希望将用户选择地点的地理坐标值,直接发送到您的服务端,只需要将以下代码放在用来给服务器发送内容的表单(Form)之中即可。

<form method="get" action="target.asp">

<script language="javascript">

var ez=new LTEZMarker("ezmarker");

//设置ezmarker显示时的中心点和比例尺级别

ez.setValue(new LTPoint(11200000,4000000),5);

</script>

<input type="submit" value="Submit"/>

</form>

在这种情况下,当用户点击按钮发送该表单的时候,EZMarker中的地理信息将和其他的Form信息一起被发送给服务器,服务器将会收到EZMarker通过Form传递的如下内容:

无论用GET还是POST方式,都能适用。

注意,其中的“ezmarker”是您创建EZMarker时构造器中的参数,假如您在页面上使用了两个EZMarker,例如第二个为:

那么服务器将收到ezmarker1.x,ezmarker1.y,和ezmarker1.z与之相对应。

使用搜索控件

搜索控件是标注接口的一个扩展控件,用来向用户提供搜索功能,以便于用户能够快速的定位到自己想要的位置。

您可以通过LTEZMarker的setSearch方法来为标注接口添加或取消搜索功能(默认自带搜索控件),该方法的详细说明见。

以下是一个简单的范例:

<script language="javascript">

var ez=new LTEZMarker("ezmarker");

ez.setDefaultView("beijing",5);//地图默认定位到北京

ez.setSearch(true,"北京");//在地图上显示搜索控件,并将默认搜索城市指定为北京

</script>

使用地图搜索控件

地图搜索控件是标注接口的又一个扩展控件,用来向用户提供快捷的定位功能,用户可以通过该控件快捷的找到自己所在的城市。

您可以通过LTEZMarker的setPlaceList方法来为标注接口添加或地图搜索功能(默认自带地图搜索控件),该方法的详细说明见。

以下是一个简单的范例:

同时使用地图搜索和搜索控件并实现联动

假如您同时添加了搜索控件和地图搜索控件,则地图搜索控件同时可以更改搜索城市,因此用户可以在选择的任意一个城市进行搜索。

关于每个控件的添加详细说明请参考各自的范例,以下是实现两个控件联动的范例:

使用方法



郑重声明:资讯 【如何把地图导航添加到网站中【标注接口】_网际猎人_百度空间】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——