//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. 從陣列中顯示谷歌地圖標記
- 10. 如何顯示標記列表中的谷歌地圖
- 11. AngularJS +谷歌地圖不顯示標記
- 12. 谷歌地圖標記不顯示javascript
- 13. 谷歌地圖v3 - 不顯示標記
- 14. 谷歌地圖標記不會顯示
- 15. 谷歌地圖標記不顯示
- 16. 谷歌地圖APIv2標記不顯示
- 17. android谷歌地圖標記不顯示
- 18. 谷歌地圖js標記不顯示
- 19. 谷歌地圖不顯示標記
- 20. 谷歌地圖API標記不顯示
- 21. 谷歌地圖標記沒有顯示
- 22. 谷歌地圖標記不顯示
- 23. 谷歌地圖標記不顯示
- 24. 谷歌地圖API不顯示標記
- 25. 谷歌地圖標記不會顯示
- 26. 無法顯示谷歌地圖標記
- 27. 谷歌地圖不顯示標記android
- 28. 谷歌地圖標記不顯示
- 29. 谷歌地圖不顯示地圖,並不顯示標記
- 30. 谷歌地圖多個標記信息窗口從創建一個谷歌地圖標記的外部鏈接
確定 我嘗試這一點,但它dosent工作 我搜索點點在看房,發現它應該像 GEvent.trigger( googleMarker [i],「點擊」); thanx – avi 2009-08-21 12:50:38
是的,這是我的錯誤,我沒有注意到我正在輸入的內容。高興地指出你在正確的方向! – CalebD 2009-08-21 12:53:51