//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