[Google Map]顯示訊息視窗[1](openInfoWindowHtml)

七月 14, 2008
Tags:

openInfoWindowHtml

光是在地圖上插上標識能表達的資訊太少,所以再加上一個訊息視窗。


Google API

  • openInfoWindowHtml()
  • GEvent.addListener()


程式碼

執行範例

google.load("maps", "2.x");
google.setOnLoadCallback(initialize);

var map = null;
function initialize() {
	// 檢查瀏覽器是否可使用 Google Map API
	if ( GBrowserIsCompatible() ) {
        map = new google.maps.Map2(document.getElementById('map'));
		// 設定地圖中心點
		map.setCenter(new GLatLng(25.036772,121.520269), 12);

addSite(map,12,'中山',25.062361,121.526194);
addSite(map,13,'萬華',25.030000,121.490556);
addSite(map,14,'古亭',25.020833,121.528611);

	} // if
	else {
		alert('您的瀏覽器不支援Google Map');
	} // else
}
// 加上標識
function addSite(map, siteCode, siteDesc, lat, lng) {
	var mark = new GMarker(
		new GLatLng(lat,lng),
		{title:siteDesc}
		);
	map.addOverlay(mark);
}

3 Responses to “[Google Map]顯示訊息視窗[1](openInfoWindowHtml)”

  1. [...] [Google Map]顯示訊息視窗[1](openInfoWindowHtml) [...]

  2. 抱歉,可以請教一個問題嗎?
    用openInfoWindowHtml的時候,如果冒出來的泡泡不能完整顯示在地圖的範圍內時,地圖會自動移動位置,想請問,有辦法使地圖不移動嗎?即使泡泡無法完全顯示也沒關係。
    請問有這樣的方法嗎?

    感謝感謝。

    openInfoWindowHtml 的作用是要顯示訊息,所以重點在泡泡的內容要讓使用者看到才會有移動地圖的動作。
    若要達到您的需求,可以試試在openInfoWindowHtml 前先記錄地點的中心座標,然後用timer在泡泡出現後將地圖移回原來的範圍。

  3. 嗯嗯,我了解你的意思,
    會提這個問題是因為現在我是寫當地圖移動時,我會依照地圖所包含的範圍去撈資料,再顯示在地圖上,但是因為openInfoWindowHtml會使地圖移動,情況就會變成,我click使openInfoWindowHtml時,因地圖移動了,我又去撈資料,地圖上的資訊就又重設了,所以我才想找找看有沒有可以openInfoWindowHtml但地圖不移動的方法。

    真的很感謝您這麼快就回應我的問題了,我真的好驚訝!
    謝謝謝謝!