0

リモート サーバーから情報を要求している間、Google マップのカーソルを「待機」カーソルに変更しようとしています。これは海外のサーバーからの天気情報で、返ってくるまでに時間がかかることもあるので、ユーザーに何かが起こっていることを知ってもらいたいです。

ユーザーがマーカーまたはバウンディング ボックスをクリックすると、次の呼び出しを行ってデータを取得します。

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 の位置にない場合、カーソルが移動するまで「待機」から通常に変わりません。

カーソルがどのように/いつ更新されるかに関して、私が見逃している基本的なものがあると思います。任意の啓発をいただければ幸いです。

この動作はhttp://www.geoffschultz.org/weather_map_2.phpで Weather Charts/BBC In-shore Forecast やその他の多くの場所を選択することで確認できます。

-- ジェフ

4

2 に答える 2

0

質問 1 では、マップ カーソルとは別にマーカー カーソルを設定する必要があります。

Marker.setCursor("wait");

InfoWindow の問題については不明です。

于 2012-09-05T14:16:01.553 に答える