//array store the markers
var googleMarker = [];
//this function get json object with the marker data
//place name,place id,place address.
function AjaxGetUserToPlaces(res)
{
var l = res.value.length;
for(var i=0;i<l;i++)
{
var point = new GLatLng(res.value[i].lng,res.value[i].lat)
map.addOverlay(createMarkerInfo(i,point,res.value[i].placeName,res.value[i].placeId));
polylineArray.push(point);
}
}
//the function create the openWindow for the marker.
function createMarkerInfo(i,latlng , placeName,placeId)
{
var marker = new GMarker(latlng);
marker.value = placeId;
GEvent.addListener(marker, 'click', function()
{
marker.openInfoWindowHtml(''+
'<a href='+baseUrl+'ui/pages/place/place.aspx?plid='+placeId+'>'+placeName+'</a>');
});
googleMarker[i] = marker
return marker;
}
//this function occur when user click on one of the result.
//it gets the number in the array googleMarker.
function showMarkerInfoWindow(i)
{
//here i want to open the marker info window.
//pay attention, i dont have the html to put inside the infowindow
//i want just to show the infowindoe with the exising html
//that created prevusly from the function createMarkerInfo
googleMarker[i].openInfoWindowHtml();
}
1
A
回答
0
您可以在標記上觸發click事件,打開其信息窗口:
GEvent.trigger(googleMarker[i], googleMarker[i].getLatLng());
0
編輯:如果你有座標,可以直接值傳遞給你的createMarker()函數。 像這樣:
HTMLCODE:
<a href="javascript:void(0);" onMouseOver="javascript:createMarker(lat1,lng1,msg1);">List1</a>
<a href="javascript:void(0);" onMouseOver="javascript:createMarker(lat2,lng2,msg2);">List2</a>
<a href="javascript:void(0);" onMouseOver="javascript:createMarker(lat3,lng3,msg3);">List3</a>
JS代碼:
function createMarker(x,y,msg) {
var point = new GLatLng(x,y);
var myHtml = msg;
var baseIcon = new GIcon();
baseIcon.shadow = "";
baseIcon.iconSize = new GSize(20, 34);
baseIcon.shadowSize = new GSize(37, 34);
baseIcon.iconAnchor = new GPoint(9, 34);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
baseIcon.infoShadowAnchor = new GPoint(18, 25);
var letteredIcon = new GIcon(baseIcon);
letteredIcon.image = "http://www.google.com/intl/en_ALL/mapfiles/marker.png";
markerOptions = { icon:letteredIcon };
var marker = new GMarker(point,markerOptions);
GEvent.addListener(marker, "mouseover", function() {
map.openInfoWindowHtml(point, myHtml);
});
}
0
地址解析器樣品http://gmaps-samples-v3.googlecode.com/svn/trunk/geocoder/v3-geocoder-tool.html看起來像你只想做什麼(查看源代碼)
相關問題
- 1. 谷歌地圖,標記信息窗口不會顯示?
- 2. 谷歌地圖標記窗口
- 3. 谷歌地圖標記信息窗口
- 4. 谷歌API API信息窗口顯示在谷歌地圖API下1標記
- 5. 谷歌地圖標記,折線和窗口信息從陣列
- 6. 谷歌地圖:獲取搜索結果和顯示標記
- 7. 如何顯示標記列表中的谷歌地圖
- 8. 谷歌地圖標記不會顯示
- 9. AngularJS +谷歌地圖不顯示標記
- 10. android谷歌地圖標記不顯示
- 11. 谷歌地圖標記不顯示
- 12. 谷歌地圖js標記不顯示
- 13. 谷歌地圖不顯示標記
- 14. 谷歌地圖APIv2標記不顯示
- 15. 谷歌地圖:當您點擊標記時如何顯示信息窗口
- 16. 谷歌地圖api:從代碼中顯示鼠標懸停窗口
- 17. 顯示多個谷歌地圖列表
- 18. 在谷歌地圖上的其他標記上顯示標記
- 19. 谷歌地圖信息窗口顯示以前的地理結果,而不是當前的結果
- 20. 顯示多個標記在陣列 - 谷歌地圖API
- 21. 從谷歌地圖中刪除標記
- 22. KMZ從谷歌地圖出口沒有顯示出一些標
- 23. 谷歌地圖標記顯示標題中的位置名稱
- 24. 如何在非常大的窗口中顯示谷歌地圖?
- 25. 地圖標記不顯示(JavaScript的/谷歌地圖API V3)
- 26. 顯示谷歌地圖與標記檢索從mysql
- 27. 從xml獲得的谷歌地圖位置顯示標記
- 28. 可檢查的JavaScript表顯示谷歌地圖標記
- 29. 打開一個新窗口,顯示谷歌搜索結果
- 30. 谷歌地圖信息窗口地圖
確定 我嘗試這一點,但它dosent工作 我搜索點點在看房,發現它應該像 GEvent.trigger( googleMarker [i],「點擊」); thanx – avi 2009-08-21 12:50:38
是的,這是我的錯誤,我沒有注意到我正在輸入的內容。高興地指出你在正確的方向! – CalebD 2009-08-21 12:53:51