帮我写一个HTML打车代码,附加定位和车费预算功能
时间: 2023-08-28 09:11:45 浏览: 119
好的,下面是一个简单的HTML打车代码,包括了定位和车费预算功能。请注意,这个代码仅供参考,你需要根据实际情况进行修改和完善。
```html
<!DOCTYPE html>
<html>
<head>
<title>打车</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style type="text/css">
#map {
height: 400px;
width: 100%;
}
</style>
<script type="text/javascript" src="https://api.map.baidu.com/api?v=2.0&ak=你的AK"></script>
</head>
<body>
<h1>打车</h1>
<div id="map"></div>
<p>起点:<input type="text" id="start" placeholder="请输入起点地址"></p>
<p>终点:<input type="text" id="end" placeholder="请输入终点地址"></p>
<p>预估车费:<span id="price"></span> 元</p>
<button onclick="calculate()">计算</button>
<script type="text/javascript">
// 初始化地图
var map = new BMap.Map("map");
map.centerAndZoom("北京", 12); // 设置地图中心点和缩放级别
map.enableScrollWheelZoom(true); // 启用滚轮缩放
// 定位
var geolocation = new BMap.Geolocation();
geolocation.getCurrentPosition(function(r){
if(this.getStatus() == BMAP_STATUS_SUCCESS){
map.panTo(r.point); // 移动地图中心点到当前位置
var marker = new BMap.Marker(r.point); // 在地图上标注当前位置
map.addOverlay(marker);
}
else {
alert('定位失败:' + this.getStatus());
}
},{enableHighAccuracy: true});
// 计算车费
function calculate() {
var start = document.getElementById("start").value;
var end = document.getElementById("end").value;
var transit = new BMap.TransitRoute(map, {
renderOptions: {map: map},
onSearchComplete: function(results){
if (transit.getStatus() == BMAP_STATUS_SUCCESS){
var plan = results.getPlan(0);
var price = plan.getPrice();
document.getElementById("price").innerHTML = price + "元";
}
}
});
transit.search(start, end);
}
</script>
</body>
</html>
```
在代码中,我们引入了百度地图API和一个免费的AK,你需要将这个AK替换成你自己的AK。同时,我们使用了BMap.Geolocation来定位当前位置,使用BMap.TransitRoute计算车费并显示预估车费。你可以根据自己的需求调整代码,添加更多功能。
阅读全文