私はページでこのjQueryのを持っている:私はクリックハンドラの早い段階で待機カーソルを作成しようjQueryの待機カーソルコードが機能しないのはなぜですか?
<script>
$(document).ready(function() {
$("#btnGetData").click(function() {
var _begdate = $("#datepickerFrom").val();
var _enddate = $("#datepickerTo").val();
var _unit = $("#unitName").text();
document.body.style.cursor = 'wait';
$.ajax({
type: 'GET',
url: '@Url.RouteUrl(routeName: "QuadrantData", routeValues: new { httpRoute = true, unit = "un", begdate = "bd", enddate = "ed" })'
.replace("un", encodeURIComponent(_unit))
.replace("bd", encodeURIComponent(_begdate))
.replace("ed", encodeURIComponent(_enddate)),
contentType: 'text/plain',
cache: false,
xhrFields: {
withCredentials: false
},
success: function (returneddata) {
$("body").html(returneddata);
},
error: function() {
console.log('hey, boo-boo!');
}
});
document.body.style.cursor = 'pointer';
});
});
</script>
注:
document.body.style.cursor = 'wait';
を...そしてバックに戻します終了時のデフォルト:
ただし、カーソルは変更されません。コードは機能します(ajax呼び出しは正常に完了します)が、カーソルはストーンフェースのままであり、ユーザーは何か起きているかどうか疑問に思います。
カーソルを待っている姿勢に変身させるには、まだ何が必要ですか?
これが起こるのでしょマウスが動いた場合、またはマウスが動かない場合のみ?私はこのテクニックを試してみましたが、mousemoveまでカーソルが変わっていないので、いくつかのケースでは.gifに変更する必要がありました –
'document.body.style.cursor = 'pointer';'を 'success ( 'body'のhtmlコンテンツを設定した後で)コールバック関数を呼び出す – ochi
@ochi:なぜ(ポインタの位置をずらして)" wait "が表示されないのでしょうか?また、成功した場合だけ戻ってきた場合は、エラーの場合には待ちカーソルが永遠に続く危険はありませんか? –