html 调高德地图 导航,在H5页面内通过地址调起高德地图实现导航

项目中用到的一个功能是要通过点击地址来实现打开地图app实现地址导航。

如下图:

08b07ed8c77a589b51adcc0f9420e2a5.png

实现思路就是在H5页面内通过点击marker图标然后进行当前位置与页面上地址的路程规划与导航。

由于项目中用到的是高德地图,所以这里用到的是调起高德地图APP来实现该功能。

首先肯定要去高德开放平台去申请KEY,拿到这个KEY后通过调用js代码就可以实现该功能。

之前在H5页面中无论是做导航还是定位一般我都是采用marker进行选点操作的,JSAPI中提供的一系列的方法可以很轻松的实现该功能,

该功能实现过程,我用的php语言进行配合操作,版本为TP5,首先我通过点击上个页面中的marker图标跳转到控制器,在控制器接收该地址,通过PHP方法获取该地址的经纬度,这个实现过程我就不贴图展示了,获取到经纬度后我通过赋值渲染到html页面后代码如下:

body,#mapContainer{margin:0;height:100%;width:100%;font-size:12px;

}

function init(){map = new AMap.Map("mapContainer", {

zoom:18,

center:["{$lng}","{$lat}"]

});

marker = new AMap.Marker({map:map,

position:["{$lng}","{$lat}"]

})

marker.setLabel({offset:new AMap.Pixel(20, 20),//修改label相对于maker的位置

content: "点击Marker打开高德地图"});

marker.on('click',function(e){marker.markOnAMAP({

position:marker.getPosition()})

})

map.addControl(new AMap.ToolBar());

if(AMap.UA.mobile){document.getElementById('button_group').style.display='none';}}

其中 有两个处代码需要改变成变量

一个是:

map = new AMap.Map("mapContainer",{zoom:18,

center:["{$lng}","{$lat}"]

});

另外一处:

marker = new AMap.Marker({map:map,

position:["{$lng}","{$lat}"]

})

然后,执行一下,效果如图:

989ac79fe335906e5539b5fda0942803.png

点击marker之后如图:

2b320651db476ae29fc4304e60d1e620.png

这就可以了,挺简单的一个小功能。

本文属原创内容,为了尊重他人劳动,转载请注明本文地址:

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
H5实现微信小程序地图导航可以通过以下步骤实现: 1. 首先,使用H5开发工具创建一个新的小程序项目。在项目中引入相关的H5地图API(例如高德地图、百度地图等)。 2. 在小程序页面HTML文件中,创建地图容器元素,可以使用div元素并设置宽度和高度等样式。 3. 在小程序页面的JavaScript文件中,获取地图容器元素,并初始化地图对象。根据选择的地图API,可以用相应的地图初始化函数,传入地图容器的ID、地图配置等参数。 4. 在地图初始化完成后,可以根据用户的定位信息,通过地图API获取用户的当前位置,并将地图中心设置为用户所在位置。 5. 根据需求,可以在页面中添加导航相关的控件,例如搜索框、当前位置按钮等。通过地图API提供的相关功能,实现地点搜索和点击定位按钮回到当前位置的功能。 6. 当用户输入导航目的地时,根据地图API提供的导航功能,可以绘制导航路线,并在地图上展示出来。可以通过设置起点和终点的经纬度,用地图API中的导航函数,获取导航路线,并将路线绘制在地图上。 7. 在地图导航绘制完成后,可以根据需要,添加额外的交互功能,例如点击路线中的某一点可以显示该点的详细信息、点击地图上的POI点可以获取相关信息等。 通过以上步骤,就可以在H5实现微信小程序地图导航功能。需要注意的是,由于H5和小程序的环境差异,因此在实现过程中可能会遇到一些兼容性和用限制方面的问题,需要根据具体的需求和使用的地图API进行整和解决。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值