html地图添加marker,谷歌地图 API 开发之添加标记
创建地图之后,基本上都需要标记位置的,就是那个圆点。然后参考谷歌的API,找了许久,网址:
https://developers.google.com...
代码如下:
Accessing arguments in UI events
html,
body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 100%;
}
function initMap() {
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: {
lat: -25.363882,
lng: 131.044922
}
});
map.addListener('click', function(e) {
placeMarkerAndPanTo(e.latLng, map);
});
}
function placeMarkerAndPanTo(latLng, map) {
var marker = new google.maps.Marker({ //创建marker对象
position: latLng,
map: map
});
map.panTo(latLng); //地图居中到当前坐标
}
这段运行效果,就是你点击地图就会添加一个marker标记。然后就这样子...
我是想要一个marker标记呀!这么多,咋处理,心塞...
谷歌地图就不能给个完整的么,真的是╮(╯_╰)╭
然后百度谷歌了好久,就是没有想要的答案,程序猿的调bug心情,大家都懂的...
不过倒是收获一点,就是删除marker的命令:marker.setMap(null);
之后,就在点击事件里,加上marker.setMap(null),加到方法里,结果是marker对象全部清空,并没有解决问题。
so,自己想了个办法,就是每点击一下,创建的marker对象就存到一个数组里,然后点击下一个重新创建marker的时候,就将前一个数组的对象删除掉。(不知道大家有什么好的建议,目前没找到合适的,也不清楚官网的正规方法是怎么做的...)
var markersArray = [];
//添加坐标对象
function addMarker(latLng, map) {
if(markersArray.length>0){
markersArray[0].setMap(null); //每次添加的时候,都要把之前的marker对象清空
};
markersArray.shift(marker); //然后再移出数组
marker = new google.maps.Marker({
position: latLng,
map: map
});
markersArray.push(marker); //将新的marker对象添加到数组
}
作为程序员,也都知道大家的习性,都是希望拿来的代码直接能用是不是,我一向都是帅气善良体贴的man,代码如下:
Simple Map
html,
body {
height: 100%;
margin: 0;
padding: 0;
}
#map {
height: 100%;
}
function initMap() {
var myLatlng = {
lat: -25.363,
lng: 131.044
};
var marker ;
var markersArray = [];
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 4,
center: myLatlng
});
map.addListener('click', function(e) {
addMarker(e.latLng, map);
});
//添加坐标对象
function addMarker(latLng, map) {
if(markersArray.length>0){
markersArray[0].setMap(null);
};
markersArray.shift(marker)
marker = new google.maps.Marker({
position: latLng,
map: map
});
markersArray.push(marker);
}
}
好了,至此就能添加marker了。如果有其它方法,还希望大家能给我提个意见(^o^)/~
时间不够了,剩下的下一篇再写,如何获取当前点击的坐标以及城市街道地址等。
html地图添加marker,谷歌地图 API 开发之添加标记相关推荐
- Dataset之谷歌地图数据集:谷歌地图数据集的简介、安装、使用方法之详细攻略
Dataset之谷歌地图数据集:谷歌地图数据集的简介.安装.使用方法之详细攻略 目录 谷歌地图数据集的简介 谷歌地图数据集的安装 谷歌地图数据集的使用方法 谷歌地图数据集的简介 谷歌地图中的1000多 ...
- Flex离线地图和在线谷歌地图实现完整版
在前面文章"Flex离线地图和在线谷歌地图实现" 中粗略的实现了基于arggis的离线和在线加载谷歌地图. 代码很多地方引用了内部的方法导致不能很好的运行,下面将呈现完整的实现. ...
- php获取谷歌地图gps定位,谷歌地图 API 开发之获取当前坐标(经纬度)
很多时候要定位到当前所在的位置,谷歌地图 API 没找到,然后网上搜的是通过原生js geolocation来实现的. 代码如下: var x=document.getElementById(&quo ...
- 地图上分成一块一块区域 高德地图_在谷歌地图上绘制行政区域轮廓【结合高德地图的API】...
实现思路: 1.利用高德地图行政区域API获得坐标列表 2.将坐标列表绘制在谷歌地图上[因为高德地图和国内的谷歌地图都是采用GCJ02坐标系,所有误差很小,可以不进行坐标误差转换] 注意点: 1.用百 ...
- php谷歌地图,php – 使用谷歌地图提交位置
我有一个html表单,我想嵌入谷歌地图,以便用户可以指出一些位置.提交表格后如何获取位置? 谢谢 解决方法: 虽然@zerkms给出了指向正确信息的指针,但这可能还不够.我创建了一个fiddle wi ...
- Android谷歌地图地理编码,谷歌地图API地理编码多个地点
我设置了一个小js代码来对一些位置和地点进行地理编码,而不是在地图上.我可以很容易地做一个位置,但我不能让它在两个位置工作.我的工作代码如下,但只针对一个位置. var geocoder = new ...
- 谷歌手机地图中文java_谷歌地图开发(1)使用MapView显示地图
一.使用MapView 时,要和 MapActivity 联合起来使用,因为在 MapActivity 中,要连接底层 网络 . 步骤 : (1)添加 MapView 组件 android:apiKe ...
- 在bigemap中添加Google map(谷歌地图)
BIGEMAP如何添加在线google map 谷歌地图 最近一直在研究如何在bigemap手机端和Gis office桌面上添加谷歌地图,经过调试,亲测有效. 谷歌卫星地图(无偏移): https: ...
- googleMap 谷歌地图
一.谷歌地图主页 谷歌地图对应不同的地区都会有一些专门的主页,首次登陆时会显示这些地区.比如,香港的:http://maps.google.com.hk,台湾的:http://maps.google. ...
最新文章
- 五轴高性能服务器,GF加工方案全新的五轴高性能加工中心MILL P 500 U
- MFC DLL对话框调用
- winrar压缩指定目录
- Shi-Tomasi算子的运用 ,用于检测角点
- python工具栏消失_[Python自学] PyQT5-菜单栏、工具栏、状态栏
- 产品经理网站数据分析之测量问题现状(二)
- MySql 性能优化
- C# 生成二维码并且在中间加Logo
- oracle 表列统计信息,Oracle中收集表与列统计信息
- MATLAB图像处理(包括图像类型转换)
- 微软云存储中国事业部,热招!
- html5播放器 php,PHP/HTML5页面上的随机声音播放器
- 查看ftp服务器里的文件,查看ftp服务器所有文件
- fiddler证书下载(模拟器)
- 【原创】《矩阵的史诗级玩法》连载十七:用矩阵研究二次贝塞尔曲线和抛物线的关系(上)
- Matlab GUI程序封装成exe文件并在不安装Matlab的电脑上运行
- JAVA 开发命名规范——阿里巴巴Java开发手册
- 自建免费的代理ip池
- 让你平步青云的十个谈话技巧(转)
- 亿赛通携手湖北省勘察设计协会 共建数据安全