JS高德地图应用 ---- 鼠标点击加入标记 & POI搜索
代码如下 (填入Key值) :
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>高德地图</title>
<link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
<script type="text/javascript"
src="http://webapi.amap.com/maps?v=1.4.8&key=申请的key值&plugin=AMap.Autocomplete,AMap.PlaceSearch"></script>
<script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script> <script type="text/javascript">
window.onload = function () { //定义初始经纬度
var mylgt = "120.185954";
var mylat = "30.11235"; //地图加载
var map = new AMap.Map("container", {
zoom: 15, //地图缩放级别
resizeEnable: true,
center: [mylgt, mylat]
}); //定义一个标记
var marker = new AMap.Marker({
icon: "https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png",
position: [mylgt, mylat]
}); //添加标记
marker.setMap(map); //为地图注册click事件获取鼠标点击出的经纬度坐标
var clickEventListener = map.on('click', function (e) {
document.getElementById("lnglat").value = e.lnglat.getLng() + ',' + e.lnglat.getLat(); //清空标记
if (marker) {
marker.setMap(null);
marker = null;
} //重设标记
marker = new AMap.Marker({
icon: "https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png",
position: [e.lnglat.getLng(), e.lnglat.getLat()]
});
marker.setMap(map);
}); //输入地点提示
var auto = new AMap.Autocomplete({
input: "tipinput"
}); //构造地点查询类
var placeSearch = new AMap.PlaceSearch({
map: map
}); //注册监听,当选中某条记录时会触发
AMap.event.addListener(auto, "select", select); function select(e) {
placeSearch.setCity(e.poi.adcode);
placeSearch.search(e.poi.name); //关键字查询查询
}
}
</script>
</head>
<body>
<div id="container"></div>
<div id="myPageTop">
<table>
<tr>
<td>
<label>按关键字搜索:</label>
</td>
<td>
<label>左击获取经纬度:</label>
</td>
</tr>
<tr>
<td>
<input type="text" placeholder="请输入关键字进行搜索" id="tipinput">
</td>
<td>
<input type="text" readonly="true" id="lnglat">
</td>
</tr>
</table>
</div> </body>
</html>
步骤说明 :
1. 在高德地图开放平台中申请Key
2. 创建Html文件,添加引用资源 ( plugin=AMap.Autocomplete,AMap.PlaceSearch 中 AMap.Autocomplete -> 输入提示插件 , AMap.PlaceSearchPOI -> 搜索插件 )
<link rel="stylesheet" href="http://cache.amap.com/lbs/static/main1119.css"/>
<script type="text/javascript" src="http://webapi.amap.com/maps?v=1.4.8&key=e0fa91db4ad26b3c627452db308f570e&plugin=AMap.Autocomplete,AMap.PlaceSearch"></script>
<script type="text/javascript" src="http://cache.amap.com/lbs/static/addToolbar.js"></script>
3. 编写地图div与相应显示栏
<div id="container"></div>
<div id="myPageTop">
<table>
<tr>
<td>
<label>按关键字搜索:</label>
</td>
<td>
<label>左击获取经纬度:</label>
</td>
</tr>
<tr>
<td>
<input type="text" placeholder="请输入关键字进行搜索" id="tipinput">
</td>
<td>
<input type="text" readonly="true" id="lnglat">
</td>
</tr>
</table>
</div>
4. 为页面添加对应功能的JS代码
<script type="text/javascript">
window.onload = function () { //定义初始经纬度
var mylgt = "120.185954";
var mylat = "30.11235"; //地图加载
var map = new AMap.Map("container", {
zoom: 15, //地图缩放级别
resizeEnable: true,
center: [mylgt, mylat]
}); //定义一个标记
var marker = new AMap.Marker({
icon: "https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png",
position: [mylgt, mylat]
}); //添加标记
marker.setMap(map); //为地图注册click事件获取鼠标点击出的经纬度坐标
var clickEventListener = map.on('click', function (e) {
document.getElementById("lnglat").value = e.lnglat.getLng() + ',' + e.lnglat.getLat(); //清空标记
if (marker) {
marker.setMap(null);
marker = null;
} //重设标记
marker = new AMap.Marker({
icon: "https://webapi.amap.com/theme/v1.3/markers/n/mark_b.png",
position: [e.lnglat.getLng(), e.lnglat.getLat()]
});
marker.setMap(map);
}); //输入地点提示
var auto = new AMap.Autocomplete({
input: "tipinput"
}); //构造地点查询类
var placeSearch = new AMap.PlaceSearch({
map: map
}); //注册监听,当选中某条记录时会触发
AMap.event.addListener(auto, "select", select); function select(e) {
placeSearch.setCity(e.poi.adcode);
placeSearch.search(e.poi.name); //关键字查询查询
}
}
</script>
JS高德地图应用 ---- 鼠标点击加入标记 & POI搜索的更多相关文章
- 原生js日期时间插件鼠标点击文本框弹出日期时间表格选择日期时间
原文出处 (这是我从互联网上搜来的,感觉能满足各方面的需求.个人感觉挺不错的,所以后期修改了一下向大家推荐!) 效果图: html代码: <!DOCTYPE html PUBLIC " ...
- JS框架_(JQuery.js)高德地图api
百度云盘 传送门 密码 :ko30 高德地图api效果 <!doctype html> <html> <head> <meta charset="u ...
- js高德地图手机定位
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <hea ...
- js之好看的鼠标点击-光标特效
1.光标特效 <script src="https://blog-static.cnblogs.com/files/axqa/bubbleCursor.js">< ...
- 原生js及H5模拟鼠标点击拖拽
一.原生js 1.拖拽的流程动作 鼠标按下 触发onmousedown事件 鼠标移动 触发onmousemove事件 鼠标松开 触发onmouseup事件 2.注意事项: 要防止div移出可视框,要限 ...
- JS高德地图计算两地之间的实际距离
这个是通过导航的方式来获取两地之间的实际距离,和消耗的时间(key值自己去申请哈) <!doctype html> <html> <head> <meta c ...
- 百度地图Api进阶教程-用户自定义数据(标记和搜索)7.html
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- 工作当中实际运用(3)——js原生实现鼠标点击弹出div层 在点击隐藏
function onmou(){ var divs=document.getElementById('kefuDV');//获取到你要操作的div if (divs.style.display==& ...
- JS 百度地图导航
上一篇文章中我们就简单的学习了HTML5 地理定位,那么今天告诉大家我在项目中遇到的一个问题吧,就是怎么实现点击一个按钮就可以调到百度地图,并且获取到你当前的位置,并且导航到指定的地方去. 不想看步骤 ...
随机推荐
- git与github工具使用
这篇文章主要的目标是用较少的时间学习Git和GitHub的基本使用.在足够一般使用的前提下,尽量减少命令.如果需要其他命令,到时候再去其他地方了解就行了. 总概:所有命令前都要加 git,如下的ini ...
- fail to resolve com.umeng.analytics:analytics:latest.integration
今天友盟接入的时候,他娘的居然提示我这个友盟jar包拉不下来 明明之前还好好的,而且别的什么东西都没问题,就这个有问题 原来使用的是 compile "com.umeng.analytics ...
- java Comparable and Comparator
1.Comparable简介 此接口对实现它的每个类的对象强加一个总排序.这种排序被称为类的自然排序,类的compareTo方法被称为其自然比较方法.可以通过 Collections.sort(和Ar ...
- Tensorflow选择性初始化图中的变量
import tensorflow as tf def initialize_uninitialized(sess): global_vars = tf.global_variables() is_n ...
- Spring官方文档下载
Spring框架是目前最流行的java web开发框架,很多时候,我们需要去查看spring的官方文档,这里就简单介绍下如何下载其官方文档. 1.搜索到spring 官网并进入 2.点击DOCS 3. ...
- 第一次提交 nacos 代码
新建 issue认领 issuefork修改 nacos 项目 .git/config 中的用户信息pushcreate pull request 到 develop 分支
- Source Insight 4.0安装使用教程
一.说明 Source Insight是什么:Source Insight是一款代码编缉.浏览.分析工具. Source Insight与文本编缉器有什么区别:Notepad++等文本编缉器也可以编缉 ...
- HTML5离线存储的工作原理和使用
在用户没有与因特网连接时,可以正常访问站点或应用,在用户与因特网连接时,更新用户机器上的缓存文件. 原理:HTML5的离线存储是基于一个新建的.appcache文件的缓存机制(不是存储技术),通过这个 ...
- oracle分析性能问题实例
摘录于SAP有关分析ORACLE数据性能事件的文档. 1.A check for the distribution of relevant Oracle server time revealed: 有 ...
- 第一次实验报告x
C程序设计实验报告 实验项目:2.3.3字符与ASCII码,2.3.4运算符的表达式与应用,2.3.5顺序结构应用程序,3.3.1数学函数的算法描述,3.3.2鸡兔同笼的算法描述,3.3.3确定坐标的 ...