144 lines
5.2 KiB
HTML
Executable File
144 lines
5.2 KiB
HTML
Executable File
<!DOCTYPE html>
|
||
<html lang="en">
|
||
<head>
|
||
<meta charset="UTF-8">
|
||
<title>地图</title>
|
||
<script type="text/javascript" src="__COMMON__/jquery-3.4.1.min.js"></script>
|
||
<link rel="stylesheet" href="__MANAGER__/layui/css/layui.css">
|
||
<script type="text/javascript" src="__MANAGER__/layui/layui.all.js"></script>
|
||
<!--腾讯地图js引入-->
|
||
<script src="https://map.qq.com/api/gljs?v=1.exp&key=XJXBZ-7EBCD-2MB45-HB73N-R362T-WRFJR"></script>
|
||
<style>
|
||
#iMap {
|
||
height: 450px;
|
||
width: 100%;
|
||
clear: both;
|
||
}
|
||
.info {
|
||
|
||
margin: 0 0 0 10px;
|
||
}
|
||
label {
|
||
width: 80px;
|
||
float: left;
|
||
}
|
||
.detail {
|
||
padding: 10px;
|
||
border: 1px solid #aaccaa;
|
||
}
|
||
</style>
|
||
</head>
|
||
<body>
|
||
<div class="info">
|
||
<p>说明:</p>
|
||
<p>1、鼠标滚轮可以缩放地图,拖动地图。</p>
|
||
<p>2、点击地图,即可获得GCJ-02的经纬度坐标,即火星坐标。</p>
|
||
</div>
|
||
<div class="layui-card layui-col-md12">
|
||
<div class="layui-card-body layui-form" style="overflow: auto;">
|
||
<div class="layui-form-item">
|
||
<div class="layui-input-inline">
|
||
<input type="text" class="layui-input" id="keyword" placeholder="请输入地名" value=""/>
|
||
</div>
|
||
<div class="layui-input-inline">
|
||
<button type="button" class="layui-btn layui-btn-normal" id="search">搜索</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div id="iMap"></div>
|
||
<script language="javascript">
|
||
layui.use(["layer"],function () {
|
||
var layer =layui.layer;
|
||
$(function () {
|
||
var mapObj;
|
||
var lnglatXY;
|
||
//初始化地图
|
||
function mapInit() {
|
||
|
||
let lng = {:empty($lng)?"104.072356":$lng};
|
||
let lat = {:empty($lat)?"30.662162":$lat};
|
||
//定义地图中心点坐标
|
||
var center = new TMap.LatLng(lat,lng);
|
||
//定义map变量,调用 TMap.Map() 构造函数创建地图
|
||
map = new TMap.Map(document.getElementById('iMap'), {
|
||
center: center,//设置地图中心点坐标
|
||
zoom: 17.2, //设置地图缩放级别
|
||
});
|
||
|
||
//创建并初始化MultiMarker
|
||
markerLayer = new TMap.MultiMarker({
|
||
map: map, //指定地图容器
|
||
//样式定义
|
||
//点标记数据数组
|
||
geometries: [{
|
||
"id": "1", //点标记唯一标识,后续如果有删除、修改位置等操作,都需要此id
|
||
"position": new TMap.LatLng(lat, lng), //点标记坐标位置
|
||
}
|
||
]
|
||
});
|
||
|
||
}
|
||
mapInit();
|
||
//定义事件处理方法
|
||
var clickHandler=function(evt){
|
||
var lat = evt.latLng.getLat().toFixed(6);
|
||
var lng = evt.latLng.getLng().toFixed(6);
|
||
//console.log("您点击的的坐标是:"+ lat + "," + lng);
|
||
|
||
//修改id为的点标记的位置
|
||
|
||
//修改id为4的点标记的位置
|
||
markerLayer.updateGeometries([
|
||
{
|
||
"id": "1",
|
||
"position": new TMap.LatLng(lat, lng),
|
||
}
|
||
])
|
||
parent.setLngLat(lng,lat);
|
||
|
||
}
|
||
//Map实例创建后,通过on方法绑定点击事件
|
||
map.on("click",clickHandler)
|
||
|
||
|
||
|
||
//搜索
|
||
$("#search").on("click",function () {
|
||
$.ajax({
|
||
type: "get",
|
||
async: false,
|
||
url: "https://apis.map.qq.com/ws/geocoder/v1/?output=jsonp&address="+$("#keyword").val()+"&key=XJXBZ-7EBCD-2MB45-HB73N-R362T-WRFJR",
|
||
dataType: "jsonp",
|
||
success: function(json){
|
||
console.log(json);
|
||
if(json.status == 0){
|
||
let lat=json.result.location.lat;
|
||
let lng=json.result.location.lng;
|
||
//修改地图中心点
|
||
map.setCenter(new TMap.LatLng(lat,lng));
|
||
//修改id为4的点标记的位置
|
||
markerLayer.updateGeometries([
|
||
{
|
||
"id": "1",
|
||
"position": new TMap.LatLng(lat, lng),
|
||
}
|
||
])
|
||
}
|
||
//map.panTo(new qq.maps.LatLng(json.result.location.lat, json.result.location.lng));
|
||
},
|
||
error: function(){
|
||
layer.msg('搜错出错');
|
||
}
|
||
});
|
||
|
||
|
||
|
||
})
|
||
|
||
})
|
||
})
|
||
|
||
</script>
|
||
</body>
|
||
</html> |