我试图改变我的光标在谷歌地图到“等待”光标,而我从远程服务器请求信息。这是来自国际服务器的天气信息,有时需要很长时间才能返回,所以我希望用户知道发生了什么事情。谷歌地图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和其他许多地方。
- 杰夫