触发谷歌地图标记点击

我设置了谷歌地图来查找用户的当前位置,并将地图放在距离他们位置最近的标记处。 点击标记时,打开一个信息框(请注意,这与infoWindow稍有不同 - http://google-maps-utility-library-v3.googlecode.com/svn/trunk/infobox/docs/examples.html )。 然而,我想要做的是自动打开最近的标记,而不需要用户实际点击。 以下是触发标记打开的代码:

//loop through all locations to add a marker:
addMarker = function(loc) {
    var markerLoc = new google.maps.LatLng(loc.Lat, loc.Long);

    var marker = new google.maps.Marker({
        map: map,
        position: markerLoc
    });

    google.maps.event.addListener(marker, "mousedown", function() {

        var infoOpts = {
            content: loc.markerText,
            boxStyle: { background: "none transparent", width: "180px"},
            pixelOffset: new google.maps.Size(-90, 0),
            closeBoxMargin: "5px"
        };

        var ib = new InfoBox(infoOpts);
        ib.open(map, marker);
    });

    markers.push(marker);
};

所以不知何故,我必须触发相应标记的mouseDown函数,但它必须在此函数之外的函数中完成。 我将参考数组中的适当标记(标记[closestmarker])。


我发现这个问题已经持续了很长时间,但为了以防万一,这个答案可能会有所帮助:触发Google地图标记点击

祝你好运!

代码如下所示:

var marker = new google.maps.Marker({});
new google.maps.event.trigger( marker, 'click' );

我发现我需要像这样附加一个点击事件到标记

var marker = new google.maps.Marker({});
marker.addListener('click', function() {
    infowindow.open(map, marker);
});
new google.maps.event.trigger( marker, 'click' );
链接地址: http://www.djcxy.com/p/81547.html

上一篇: trigger google maps marker click

下一篇: Google Maps JS API v2