2

こんにちは、gmap を自分の Web サイトに統合しようとしていますが、デフォルトでは情報ウィンドウが開いています。マーカーをクリックした後に情報ウィンドウを開きたいのですが、ページの読み込み時に情報ウィンドウを閉じるにはどうすればよいですか?

function initialize() {
    if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map_canvas"));
        map.setCenter(new GLatLng(22.4642600, 70.0690540), 6);
        map.addControl(new GSmallMapControl());
        map.addControl(new GMapTypeControl());
        map.addMapType(G_SATELLITE_3D_MAP);
        for (var i = 0; i < newpoints.length; i++) {
            var point = new GPoint(newpoints[i][1], newpoints[i][0]);
            var popuphtml = newpoints[i][4];
            var post_url = newpoints[i][5];
            var addr = newpoints[i][6];
            var marker = createMarker(point, newpoints[i][2], popuphtml, post_url, addr);
            map.addOverlay(marker);
        }
    }
}

function createMarker(point, icon, popuphtml, post_url, addr) {
    var popuphtml = '<div id="popup">' + popuphtml + '<div><a href=' + post_url + '>Link</a></div></div>';
    var marker = new GMarker(point);
    marker.openInfoWindowHtml(popuphtml);
    GEvent.addListener(marker, "click", function () {
        marker.openInfoWindowHtml(popuphtml);
    });
    return marker;
}
4

2 に答える 2

1

この行を削除

marker.openInfoWindowHtml(popuphtml);

そうなる

function createMarker(point, icon, popuphtml, post_url, addr) {
    var popuphtml = '<div id="popup">' + popuphtml + '<div><a href=' + post_url + '>Link</a></div></div>';
    var marker = new GMarker(point);
    GEvent.addListener(marker, "click", function () {
        marker.openInfoWindowHtml(popuphtml);
    });
    return marker;
}

あなたはopenInfoWindowHtmlすぐにメソッドを呼び出していました...今clickではマーカーのイベントが発生したときにのみ呼び出されます

ノート

Google マップ V2 を使用しています ... これは V2 に関連する Google からのメッセージです

注: Google Maps Javascript API バージョン 2 は、2010 年 5 月 19 日に正式に廃止されました。V2 API は廃止ポリシーに従って引き続き機能しますが、コードを Maps Javascript API のバージョン 3 に移行することをお勧めします。

于 2012-04-11T10:17:11.083 に答える
0

marker.openInfoWindowHtml(popuphtml);後を取り除くvar marker = new GMarker(point);

于 2012-04-11T10:16:46.417 に答える