draggableCursor不会更改为等待光标

时间:2012-09-04 16:33:22

标签: javascript google-maps-api-3 cursor

我正在尝试将可拖动光标更改为等待光标,但它永远不会更改。用户单击标记或边界框后,将调用以下代码。当我点击一个物体时,光标从一只张开的手变成一只闭合的手。一旦URL请求完成,手就会回到开放的手中。在某些情况下,URL请求可能需要几秒钟才能完成。离开“map.setOptions({draggableCursor:'wait'});”之间没有区别编码或评论它。

我做错了什么?

- 杰夫

function httpRequest(url)
{
map.setOptions({draggableCursor:'wait'});
var pageRequest = false; //variable to hold ajax object
/*@cc_on
   @if (@_jscript_version >= 5)
      try {
      pageRequest = new ActiveXObject("Msxml2.XMLHTTP")
      }
      catch (e){
         try {
         pageRequest = new ActiveXObject("Microsoft.XMLHTTP")
         }
         catch (e2){
         pageRequest = false
         }
      }
   @end
@*/

if (!pageRequest && typeof XMLHttpRequest != 'undefined')
   {pageRequest = new XMLHttpRequest();}

if (pageRequest)
    {       
       pageRequest.open('GET', url, false); //get page synchronously
       pageRequest.send(null);
       openInfoWindow(pageRequest, 0);
    }
map.setOptions({draggableCursor:null});

}

1 个答案:

答案 0 :(得分:0)

问题在于我正在进行同步get,这基本上导致整个浏览器挂起等待响应。我将其更改为异步ajax get,光标现在更改为等待光标,正如我所期望的那样。

但是,在ajax“success”函数的第1行中,我将光标更改回正常光标abd,然后打开带有响应的infoWindow。如果光标位于infoWindow之外,它将继续显示等待光标,直到我移动它,此时它将恢复为正常光标。如果光标位于infoWindow的位置,它将保持等待光标,直到我将它移到infoWindow之外。关于这个的任何想法?

- 杰夫