使用一行将标记链接在一起:googlemapsapi
linking markers together using a line: google maps api
我想编写一个功能代码,当用户单击一个标记时,它会出现,然后当用户单击下一个标记,它会使用一行将其连接到上一个标记。我已经尝试过使用谷歌api文档来实现这一点,但似乎无法使该功能发挥作用。有人能帮忙吗?
这是代码:
google.maps.event.addListener(map, "click", function(event) {
var marker = new google.maps.Marker({
position: event.latLng,
map: map
});
poly = new google.maps.Polyline({
strokeColor: '#000000',
strokeOpacity: 1.0,
strokeWeight: 3
});
poly.setMap(map);
map.addListener('click', addLatLng);
}
function addLatLng(event) {
var path = poly.getPath();
path.push(event.latLng);
var marker = new google.maps.Marker({
position: event.latLng,
title: '#' + path.getLength(),
);
最简单的事情是使折线全局化,然后在addLatLng
事件处理程序函数中执行所有操作:
// global polyline
var map;
var poly = new google.maps.Polyline({
strokeColor: '#000000',
strokeOpacity: 1.0,
strokeWeight: 3
});
// add marker and point to polyline path
function addLatLng(event) {
var path = poly.getPath();
path.push(event.latLng);
var marker = new google.maps.Marker({
position: event.latLng,
title: '#' + path.getLength(),
map: map
});
};
代码片段:
// global variables
var map;
var poly = new google.maps.Polyline({
strokeColor: '#000000',
strokeOpacity: 1.0,
strokeWeight: 3
});
function initialize() {
map = new google.maps.Map(
document.getElementById("map_canvas"), {
center: new google.maps.LatLng(37.4419, -122.1419),
zoom: 13,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
map.addListener('click', addLatLng);
// add the polyline to the map
poly.setMap(map);
}
function addLatLng(event) {
var path = poly.getPath();
path.push(event.latLng);
var marker = new google.maps.Marker({
position: event.latLng,
title: '#' + path.getLength(),
map: map
});
};
google.maps.event.addDomListener(window, "load", initialize);
html,
body,
#map_canvas {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<div id="map_canvas"></div>
相关文章:
- JavaScript链接在点击时不起作用;函数在页面加载时工作
- 在 JavaScript 中使用侦听器将输入字段链接在一起
- 我想通过单击按钮将 2 个 php 文件链接在一起
- 如何将(CSS/HTML)的包链接在一起.CSS/HTML->CSS/HTML->CSS/HTML
- 我可以将javascript和方法中的属性链接在一起吗?
- 未定义“角度”(脚本未链接在一起)
- 使用一行将标记链接在一起:googlemapsapi
- 将承诺与多个参数链接在一起
- 如何在react中将单独文件中的组件链接在一起
- JavaScript变量毫无理由地链接在一起
- 如何将CSS、javascript和HTML文件链接在一起
- 如何使用jquery将两个元素关联/链接在一起
- 将大量(>40,000)原生承诺链接在一起会消耗太多内存
- 如何将这些函数与承诺链接在一起
- javascript数组中的对象神秘地链接在一起
- jQuery-如何将DOM元素和Javascript对象链接在一起
- AngularJS-将两个指令绑定/链接在一起
- 使用Jquery(甚至只是Javascript),了解如何将命令链接在一起
- 拥有多个日期选择器并将它们全部链接在一起
- 将多个Select2链接在一起