1

Google マップ API v3 の情報ウィンドウにマウス イベントはありますか。closeclick イベントのように。実際には、3 秒後に情報ウィンドウを閉じています。しかし、マウスポインターが情報ウィンドウの上にある場合、それを閉じてはいけません。それを行う例を教えてください..どうもありがとう。

私のコードは次のように書かれています---

function generateMarkers(locations, is_paid) 
    { var marker; for (var i = 0; i < locations.length; i++)
     {
                var marker;
                for (var i = 0; i < locations.length; i++) {

                    createMarker(new google.maps.LatLng(locations[i][0], locations[i][1]), locations[i][2], locations[i][3], locations[i][4], is_paid);
                }
            }

            function createMarker(pos, name, town, image, is_paid) {
                var infowindow;

                var marker = new google.maps.Marker({
                    position: pos,
                    map: map,  // google.maps.Map 
                    title: name,
                    icon: "images/red.png"

                });
                infowindow = new google.maps.InfoWindow
                ({
                    content: '<div id="dvContent" onmouseover="clearTime()" onmouseout="clearwindow()"><div style="color:black;float:left"><img src="' + image + '" width="50px" height="50px"/></div><div style="color:black;margin-left:60px">' + name + '<br>Address:' + town + '<br><a href="#" target="_blank" style="color:blue">www.somethingcupid.com</a></div></div>'


                });

                google.maps.event.addListener(marker, 'mouseover', function () {
                    if (is_paid != "True") {

                        document.getElementById("divPopup").style.display = "block";
                    }
                    else {

                        infowindow.open(map, marker);


                    }

                });



                google.maps.event.addListener(marker, 'mouseout', function () {
                    if (is_paid != "True") {

                        document.getElementById("divPopup").style.display = "block";
                    }
                    else {

                        t = setTimeout(function () { infowindow.close() }, 3000);

                    }

                });
}

                function clearTime() {
                    clearTimeout(t);
                }enter code here

                function clearwindow() {
                    setTimeout(function () { infowindow.close() }, 3000);
                }
4

1 に答える 1

0

マウス アクティビティに関連する唯一のInfoWindow イベントcloseclickはです。

できることは<div>、InfoWindow コンテンツ内で を使用し、そのマウス イベントを使用することです。(アクティブな領域の周囲に非アクティブな境界線が表示されます。)

于 2012-07-20T07:12:54.377 に答える