gpt4 book ai didi

javascript - 使用 JavaScript 链接放大标记

转载 作者:行者123 更新时间:2023-11-29 20:09:56 25 4
gpt4 key购买 nike

我是谷歌地图和 JavaScript 的初学者。

我正在使用 Maps API V3 在谷歌地图上创建一个随机标记,我想在包含所有标记 ID 的一侧创建一个列表,这样当我点击标记 ID 时,它会放大,在 map 上显示标记。具体来说,我想知道如何在 javascript 中创建该链接

谢谢

最佳答案

这个答案是从初学者到初学者的;)我喜欢 benastan 的简洁和闭包应用的答案,但我仍然想通过编写函数来展示更“基本”的方法。

我觉得没有资格谈论闭包和函数作用域,但根据经验我可以说这些闭包“包装器”可以防止在循环内或其他函数内调用的函数出现意外行为。一个这样的错误可能是循环迭代器值以所有相同的值(最后一次迭代)结束或未定义。 (my own example)

完整代码链接:http://jsfiddle.net/WaWBw/

点击 map 放置标记,点击旁边的标记或链接可以放大。

  function addMarker(pos) {
var marker = new google.maps.Marker({
map: map,
position: pos
});
markers.push(marker);
count = markers.length - 1;
addMarkerListener(marker, count, 6);
makeDiv(count, 4, "Marker #");
count++;
}

function addMarkerListener(marker, index, zoomLevel) {
google.maps.event.addListener(marker, 'click', function(event) {
zoomIn(index, zoomLevel);
});
}

function makeDiv(index, zoomLevel, content) {
document.getElementById("sidebar").innerHTML += '<div onclick="zoomIn(' + index + ',' + zoomLevel + ')">' + content + ' ' + index + '</div>';
}

function zoomIn(index, zoomLevel) {
map.setCenter(markers[index].getPosition());
map.setZoom(zoomLevel);
}

关于javascript - 使用 JavaScript 链接放大标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10483569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com