gpt4 book ai didi

javascript - google maps api v3 - 从外部点击打开信息窗口

转载 作者:数据小太阳 更新时间:2023-10-29 04:31:22 32 4
gpt4 key购买 nike

所以我有一个像这样初始化的 V3 map :

function init() {
var mapCenter = new google.maps.LatLng(51.5081289,-0.128005);
var map = new google.maps.Map(document.getElementById('map'), {
'zoom': 6,
'center': mapCenter,
'mapTypeId': google.maps.MapTypeId.ROADMAP,
panControl: false,
mapTypeControl: false,
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.SMALL,
position: google.maps.ControlPosition.LEFT_TOP
},
});

还有一大堆看起来像这样的标记:

var marker25837500 = new google.maps.Marker({
map: map,
pop_title: 'blah blah',
pop_wind: 'more blah',
zIndex: 999,
icon: 'images/map_icons/s6.png'
});
google.maps.event.addListener(marker25837500, 'click', onMarkerClick);

最后,我有一个功能可以在他点击每个制造商时打开信息窗口:

var infoWindow = new google.maps.InfoWindow;

var onMarkerClick = OpenInfoWindow;

function OpenInfoWindow() {
var marker = this;
infoWindow.setContent('<h3>' + marker.pop_title + '</h3>' +
marker.pop_body);

infoWindow.open(map, marker);
};
google.maps.event.addListener(map, 'click', function() {
infoWindow.close();
});

我的问题是,我需要做什么才能使特定标记(例如 marker25837500)在单击页面内部时显示其信息窗口 - 可能类似于:

<div id="marker25837500">click to see infoWindow!</div>

我敢肯定这很容易,但我可以通过它看到我的方法!

谢谢

最佳答案

您可以使用trigger 事件。

$('#marker25837500').click(function () {
google.maps.event.trigger(marker25837500, 'click')
})

检查这个- https://developers.google.com/maps/documentation/javascript/reference#event

编辑: 还注意到您在单击 marker25837500 时调用了 onMarkerClick(),但您将另一个函数命名为 OpenInfoWindow () 所以你可能也需要改变它。

关于javascript - google maps api v3 - 从外部点击打开信息窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10798435/

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