2012-09-05 39 views
0

我试图改变我的光标在谷歌地图到“等待”光标,而我从远程服务器请求信息。这是来自国际服务器的天气信息,有时需要很长时间才能返回,所以我希望用户知道发生了什么事情。谷歌地图V3中奇怪的光标行为

用户点击任何标记或边框,然后我提出以下调用来获取数据:

map.setOptions({draggableCursor: "wait"}); 
$.ajax({ 
    type:"GET", 
    dateType:"html", 
    url:url, 
    cache:false, 
    success:function(response){openInfoWindow(response, 1);}, 
    error:function() 
     { 
     map.setOptions({draggableCursor: null}); 
     displayMessage("badGet",0); 
     } 
});; 

function openInfoWindow(request, ignoreStatus) 
{ 
map.setOptions({draggableCursor: null}); 
infoWindow = new InfoBox({maxWidth: 0, position: center, disableAutoPan: true}); 
} 

,我在做的openInfoWindow的第一件事是map.setOptions({draggableCursor: null}),所以光标应该返回到正常的光标。之后,我打开一个infoWindow结果。

这是我觉得是很奇怪:

1)如果我离开光标在标记或边框内,它永远不会切换到等待光标。如果将其从标记或边界框外移出,它将按预期运行。 2)如果光标位于infoWindow出现的位置,光标切换到等待光标,但不切换回正常光标,直到我将光标移到infoWindow之外。 3)当光标不在被点击的对象或infoWindow的位置上时,它不会从“wait”变为normal,直到光标移动。

我怀疑有一些基本的东西我错过了关于如何/何时游标被更新。任何启发将不胜感激。

请注意,您可以在http://www.geoffschultz.org/weather_map_2.php上看到此行为,方法是选择Weather Charts/BBC In-shore Forecast和其他许多地方。

- 杰夫

回答

0

问题1,你需要从地图光标分别设置标记光标。

Marker.setCursor("wait"); 

不知道有关使用信息窗口的问题。

1

我也不得不拖动或点击得到光标改回来后

map.setOptions({draggableCursor: null});

使用这个,而不是尽快为我工作,我移动鼠标

map.setOptions({draggableCursor: ''});