0

当我从远程服务器请求信息时,我试图将我在谷歌地图中的光标更改为“等待”光标。这是来自国际服务器的天气信息,有时可能需要很长时间才能返回,所以我希望用户知道正在发生一些事情。

用户单击标记或边界框,然后我进行以下调用以获取数据:

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) 当光标不在被点击的对象或信息窗口的位置上时,它不会从“等待”变为正常,直到光标移动。

我怀疑关于光标如何/何时更新,我缺少一些基本的东西。任何启示将不胜感激。

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

——杰夫

4

2 回答 2

1

我还必须拖动或单击以使光标在之后变回来

map.setOptions({draggableCursor: null});

只要我移动鼠标,使用它就对我有用

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

于 2016-06-07T23:29:52.820 回答
0

对于问题 1,您需要将标记光标与地图光标分开设置。

Marker.setCursor("wait");

不确定 InfoWindow 的问题。

于 2012-09-05T14:16:01.553 回答