我希望有人可以帮助解决可能相当简单的查询。我在这里看到了一个关于尝试在不单击鼠标的情况下执行此操作的问题,但我想向 Fusion Table 地图上的标记添加一个事件侦听器,它将在地图下方的单独 div 中加载 infoWindow 内容。到目前为止,我已经抑制了 infoWindow,但是在添加点击、检索与该标记相关的数据并加载到 div 的下一步中,我有点迷失了。
标记显示仅限于用户位置设置半径内的标记,以减少加载时间。
我假设我需要从这样的事情开始:
google.maps.event.addListener(layer, 'click', function() {
我会很感激任何线索。
到目前为止,这是我的代码的相关位:
var tableid = '[ID]';
var layer = new google.maps.FusionTablesLayer({
query: {
select: 'Location',
from: tableid,
where: 'ST_INTERSECTS(Location, CIRCLE(LATLNG'+marker.position+', 2000))'
},
options: {
suppressInfoWindows: true
}
});
var circle = new google.maps.Circle({
map: map,
radius: 2000,
fillOpacity: 0.1,
strokeOpacity: 0,
clickable: false
});
circle.bindTo('center', marker, 'position');
layer.setMap(map);
});
编辑:
为了大家的娱乐,这是我迄今为止尝试过的:
google.maps.event.addListener(layer, "click", function () {
$('#infoWindowDiv').append('new google.maps.infoWindowHtml');
});
它不起作用可能会让任何人感到惊讶。但是,嘿,至少我在努力!谢谢
编辑2:
我很高兴地说我找到了一个可行的解决方案 - 我在这里为任何可能有相同问题/目标的其他人发布:
google.maps.event.addListener(layer, "click", function (e) {
document.getElementById("infoWindowDiv").innerHTML = e.infoWindowHtml;
});