【发布时间】:2017-12-02 11:31:44
【问题描述】:
我正在研究谷歌地图。我想将标记链接到菜单中的项目。如果我单击名称,它应该只显示相应的标记。但我的代码只指向地图中的最后一个标记。
我所有的链接都指向最后一个标记。请帮我解决这个问题。
<div class="menu">
<div data-bind="foreach: visible">
<p class="clicked" data-bind="text: location, click"></p>
</div>
</div>
javaScript:
var bounds = new google.maps.LatLngBounds();
for (var i = 0; i < markersData.length; i++) {
var latlng = new google.maps.LatLng(markersData[i].lat, markersData[i].lng);
var loc = markersData[i].locationId;
var name = markersData[i].location;
$('.clicked').on('click', function() {
if ($('.clicked').location = name) {
console.log(location);
createMarker(latlng, loc);
}
});
我更改了代码,但这个代码在单击单个链接时一次显示所有标记。
function displayMarkers() {
var bounds = new google.maps.LatLngBounds();
for (var i = 0; i < markersData.length; i++) {
var latlng = new google.maps.LatLng(markersData[i].lat,markersData[i].lng);
var loc = markersData[i].locationId;
var name = markersData[i].location;
checkLinkClicked(latlng, loc, name);
createMarker(latlng, loc);
bounds.extend(latlng);
}
map.fitBounds(bounds);
}
function checkLinkClicked(latlng, loc, name) {
$(’.clicked’).on(‘click’, function() {
if ((’.clicked’).location = name) {
createMarker(latlng, loc);
}
});
}
请帮忙。
【问题讨论】:
-
嗨 Aaqib...感谢格式化。
-
您的fiddle 不起作用。
-
我编辑了这个问题。我解决了相关问题,但无法将其应用于我的代码。
标签: javascript google-maps-api-3 google-maps-markers