仿美团外卖腾讯地图选点(免费附源码)
腾讯地图API制作美团外卖配送地址定位信息效果代码。选择省/市/区,输入街道详细地址精确地图定位效果。
描述:自动构建地图搜索,地图选点,拖拽选点,动态删除版权信息, 异步加载腾讯地图js等
异步加载腾讯地图js、 自动构建地图搜索,地图选点 拖拽选点。仅供参考。
html
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>仿美团外卖腾讯地图选点</title>
<style>
input,
select {
width: 200px;
height: 35px;
}
.form-item {
margin: 20px;
width: 100%;
}
.content {
width: 800px;
margin: 0 auto;
}
</style>
</head>
<body>
<div class="content">
<div class="layui-form">
<div class="form-item">
<label>省/市/区</label>
<select name="Province" class="store_Province" style="width:200px;">
<option value="">请选择省</option>
<option value="广东省">广东省</option>
</select>
<select name="City" class="store_City" style="width:200px;">
<option value="">请选择市</option>
<option value="广州市">广州市</option>
</select>
<select name="Area" class="store_Area" style="width:200px">
<option value="">请选择县/区</option>
<option value="天河区">天河区</option>
<option value="番禺区">番禺区</option>
<option value="越秀区">越秀区</option>
<option value="荔湾区">荔湾区</option>
</select>
</div>
</div>
<div class="form-item">
详细地址
<input type="text" class="layui-input store_Address" style="width:623px;" maxlength="300" name="Address" id="address" placeholder="详细至门牌号, 与营业执照地址一致" />
<img src="img/location.png" style="width:20px;top: 5px; position: relative;" id="btnLocation" />
</div>
<div class="form-item">
<div style="width:710px">
<div id="myMap" style="width:100%;height:400px;"></div>
</div>
</div>
<input type="hidden" class="store_Lng" />
<input type="hidden" class="store_Lat" />
</div>
<script src="js/index.js"></script>
</body>
.....↓ 关注下方公众号, 回复 '001' 即可获取源码
</html>
js
window.onload = function() {
$("#btnLocation").click(function() {
if ($('.store_Province').val() == "" || $('.store_City').val() == "" || $('.store_Area').val() == "") {
alert("请选择省市区");
return;
}
if ($("#address").val() == "") {
alert("请填写详细地址");
return;
}
var address = $('.store_Province').find("option:selected").text() + $('.store_City').find("option:selected").text() + $('.store_Area').find("option:selected").text() + $("#address").val();
setPlace(address);
});
$('.store_Area').change(function(obj) {
if ($('.store_Province').val() == "" || $('.store_City').val() == "" || $('.store_Area').val() == "") {
alert("请选择省市区");
return;
}
$(".store_Lng").val("");
$(".store_Lat").val("");
earth();
});
function earth() {
var address = $('.store_Province').find("option:selected").text() + $('.store_City').find("option:selected").text() + $('.store_Area').find("option:selected").text();;
if (address != "") {
var city = $(".store_City").val();
myGeo.getPoint(address, function(point) {
if (point) {
map.centerAndZoom(point, 12);
map.clearOverlays();
} else {
}
}, city);
}
}
var IsHover = true;
var tipIndex;
$(".btnLocation").click(function(e) {
if ($('.store_Province').val() == "" || $('.store_City').val() == "" || $('.store_Area').val() == "") {
alert("请选择省市区");
return;
}
if ($("#Address").val() == "") {
alert("请填写详细地址");
return;
}
var address = $('.store_Province').find("option:selected").text() + $('.store_City').find("option:selected").text() + $('.store_Area').find("option:selected").text() + $("#Address").val();
setPlace(address, true);
});
var autocompleteMarkers = [];
var ap;
var load = true;
function autocomplete() {
ap = new qq.maps.place.Autocomplete(document.getElementById('baiduAddress'), {
offset: new qq.maps.Size(0, 5),
location: $(".store_City").val()
});
var keyword = "";
qq.maps.event.addListener(ap, "confirm", function(res) {
keyword = res.value;
searchService.search(keyword);
});
}
var marker;
var infoWin;
var searchService;
function clearOverlays(clear) {
if (clear) {
if (Array.isArray(clear)) {
for (i in clear) {
clear[i].setMap(null);
}
} else {
clear.setMap(null);
}
}
}
function clickCoordinate(e, isLoad, isMarker, callback) {
var lat = e.lat;
var lng = e.lng;
if (isMarker != true) {
clearOverlays(marker);
marker = new qq.maps.Marker({
map: map,
position: e,
draggable: true
});
qq.maps.event.addListener(marker, "click", function(res) {
clickCoordinate(res.latLng);
});
}
clearOverlays(infoWin);
infoWin = new qq.maps.InfoWindow({
map: map
});
function loadControl() {
var div = document.createElement("div");
div.style.cursor = "pointer";
div.style.margin = "10px auto auto auto";
div.style.backgroundColor = "white";
div.innerHTML = "<div><input type='text' maxlength='300' id='baiduAddress' name='baiduAddress' style='width: 350px;height: 33px;text-indent:1em;float:left;border: 1px solid #D2D2D2!important;border-right:none;' placeholder='输入门店详细地址, 越详细定位越精准' />" +
"<div class='searchMap' style='border:1px solid #f50;background-color:#f50;width:60px;height:33px;float:left;'></div>" +
"<img class='searchMap' src='img/search.png' style='height: 22px;position: absolute;right: 18px;top: 7px;'/><div style='clear:both'></div></div>";
div.index = 1;
map.controls[qq.maps.ControlPosition.TOP_CENTER].push(div);
}
}
.....↓ 关注下方公众号, 回复 '001' 即可获取源码
❉ 前端 零基础 入门到高级教学 (视频+源码+开发软件+学习资料+面试题) 一整套
❉ 1.看到这里了就 [点赞+好评+收藏] 支持下吧,你的「点赞,好评,收藏」是我创作的动力。
❉ 2.关注我~ 每天带你学习 :各种前端插件、3D炫酷效果、图片展示、文字效果、以及整站模板 、大学生毕业设计模板 等! 「在这里有好多 前端 开发者,会讨论 前端 Node 知识,互相学习」!
❉ 3.以上内容技术相关问题可以留言/私信交流,也可以关注↓下方公众号 获取更多源码 !
❉ 更多源码
❤女朋友生日❤ HTML+css3+js 实现抖音炫酷樱花3D相册 (含背景音乐)程序员表白必备
❤七夕情人节❤html+css+js 漫天飞雪3D相册(含音乐自定义文字) 程序员表白必备
❤炫酷烟花表白❤ html+css+js 放一场浪漫烟花秀(含音乐) 程序员表白
❤唯美满天星❤ html+css+js炫酷3D相册(含音乐可自定义文字)程序员表白必备
新年祝福❤雪花飘落❤ html+css3+js 实现3D相册开关闭合旋转(情人节生日表白)必备
❤爱情墙❤html5+css3+js 实现全屏七夕表白页面 (可自定义文字相片)
❤[前端永久免费部署上线工具] 解决不需要服务器就能将项目部署上线问题!
❤超炫100套❤vue/react+echarts❤ 大屏可视化数据平台实战项目分享 (附源码)
抖音❤超火| html+css+js 流星雨3D相册(表白必备)制作教程来啦!
前端❤ html+css+js 实现1000个超炫酷特效(附源码)
web前端❤基于html+css+js 仿JD天猫电商平台功能齐全(免费附源码)
抖音超火❤ html+css+js 实现炫酷3D立方图像库(免费附源码)