今天第一次在博客园写文章,文采不太好,希望看得懂,呵!
这里采用的是51ditu接口(http://api.51ditu.com/special/interface/ezmarker.html)
1.保存位置数据到数据库,前台页面代码如下:
先导入所需js文件
<script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>
<script language="javascript" src="http://api.51ditu.com/js/search.js"></script>
<script language="javascript" src="http://api.51ditu.com/js/ezmarker.js"></script>
地图位置设置触发事件
<script language="javascript">
function setMap(point,zoom)
{
document.getElementById("x").value=point.getLongitude(); document.getElementById("y").value=point.getLatitude();
document.getElementById("z").value=zoom;

//判断有没有选中标识,这里可以写你要的事件
if(point.getLongitude() == 0){}Else{}

}
var ezmarker = new LTEZMarker("pos");
LTEvent.addListener(ezmarker,"mark",setMap);//"mark"是标注事件
<script>
先导入JS文件一个
<script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>

<script language="javascript">
//DIV的样式 style="position:relative; width:100%; height:100%;"
var lng,lat,zoom,txt,msg;
var url = location.search.substring(1);
url = url.split("&");
for(var i=0;i<url.length;i++){
var tmp = url[i].split("=");
eval(tmp[0] + "='" + tmp[1] + "'");
}
var maps,p,icon,m,t;
if(lng && lat){
maps = new LTMaps("maps");
p = new LTPoint(parseInt(lng),parseInt(lat));
zoom = (zoom)?parseInt(zoom):12;
maps.centerAndZoom(p,zoom);
if(txt){
icon = new LTIcon();
icon.setImageUrl("http://my.51ditu.com/my/img/blog.gif");
m = new LTMarker(p,icon);
t = new LTMapText(m);
t.setLabel(txt);
maps.addOverLay(m);
maps.addOverLay(t);
//添加 常用操作控件
var gtb = new LTSmallMapControl(); maps.addControl(gtb);
//小图片链接地址
function doit(){
window.open(图标链接地址,"");
}
LTEvent.addListener(m,"click",doit);
}
}
</script>
这里采用的是51ditu接口(http://api.51ditu.com/special/interface/ezmarker.html)
1.保存位置数据到数据库,前台页面代码如下:
先导入所需js文件
<script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>
<script language="javascript" src="http://api.51ditu.com/js/search.js"></script>
<script language="javascript" src="http://api.51ditu.com/js/ezmarker.js"></script>
<script language="javascript">
function setMap(point,zoom)
{
document.getElementById("x").value=point.getLongitude(); document.getElementById("y").value=point.getLatitude();
document.getElementById("z").value=zoom;
//判断有没有选中标识,这里可以写你要的事件
if(point.getLongitude() == 0){}Else{}
}
var ezmarker = new LTEZMarker("pos");
LTEvent.addListener(ezmarker,"mark",setMap);//"mark"是标注事件
<script>运行后会出现如下图标:
点击"标注位置",会出现如下图:
接着选择位置,最后提交页面存放地图数据(x,y,z)到数据库
2.根据设置的地理数据,显示出地图位置
这里用iframe嵌套
<iframe frameborder=’0’ scrolling=’no’ style="width:700px;height:515px;"src='ShowMaps.aspx?lng=x坐标&lat=y坐标&zoom=尺寸&txt= 详细说明'></iframe>
ShowMaps前台代码如下:
先导入JS文件一个
<script language="javascript" src="http://api.51ditu.com/js/maps.js"></script>
<script language="javascript">
//DIV的样式 style="position:relative; width:100%; height:100%;"
var lng,lat,zoom,txt,msg;
var url = location.search.substring(1);
url = url.split("&");
for(var i=0;i<url.length;i++){
var tmp = url[i].split("=");
eval(tmp[0] + "='" + tmp[1] + "'");
}
var maps,p,icon,m,t;
if(lng && lat){
maps = new LTMaps("maps");
p = new LTPoint(parseInt(lng),parseInt(lat));
zoom = (zoom)?parseInt(zoom):12;
maps.centerAndZoom(p,zoom);
if(txt){
icon = new LTIcon();
icon.setImageUrl("http://my.51ditu.com/my/img/blog.gif");
m = new LTMarker(p,icon);
t = new LTMapText(m);
t.setLabel(txt);
maps.addOverLay(m);
maps.addOverLay(t);
//添加 常用操作控件
var gtb = new LTSmallMapControl(); maps.addControl(gtb);
//小图片链接地址
function doit(){
window.open(图标链接地址,"");
}
LTEvent.addListener(m,"click",doit);
}
}
</script>
如果有兴趣的朋友,可以试试~
效果如: http://biz.myking.cn/CityTopVipMap.aspx?i=1169799


浙公网安备 33010602011771号