は私のコードです:どうすれば "待って、処理しています..!"システム?ここ
function sleep (time) {
return new Promise((resolve) => setTimeout(resolve, time));
}
$("body").on('click', '.fa-check', function(e) {
// sleep() emulates a short waiting time as ajax's request
sleep(1000).then(() => {
$('.fa-check').not(this).removeClass('checked');
$(this).toggleClass('checked');
});
});
.fa-check {
color: #aaa;
cursor: pointer;
}
.fa-check.checked {
color: #44b449;
}
<script src="https://use.fontawesome.com/9e9ad91d21.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p>answer1</p>
<i class="fa fa-check" aria-hidden="true"></i>
<hr>
<p>answer2</p>
<i class="fa fa-check checked" aria-hidden="true"></i>
<hr>
<p>answer3</p>
<i class="fa fa-check" aria-hidden="true"></i>
私は私のコードにコメントしてきたように、私はアヤックスの要求として、短い待ち時間をエミュレートしました。ここで、ユーザーがの「処理中です」のいずれかのチェックアイコンをクリックすると、そのユーザーに表示されます。私はアイコンの下にこのようなPNGを使用することができます。
しかし、私はを待っているように、そのチェックインのアイコンをオン/オフすることにより、(それが処理している)ことを時間をやりたいです。現在、チェックアイコンをクリックすると何も起こりません。1 sec
の後に緑色が変わります。今私はこの1 sec
のユーザーにを表示するために何かしたい "システムが動作しています、しばらくお待ちください..."。
このチェックアイコンをオン/オフにするとよいでしょう。誰も私はそれをどうやって行うことができますか?
編集:私は画像を使用しません。私はちょうどそのチェックアイコンの色を変更したい。点灯して消灯するランプのように。
期待される効果は何ですか? '.fa-check'をクリックすると、クリックされた要素は' className'が 'checked'して色が緑色に変わり、1秒後に' className'が追加されます。 – guest271314
@ guest271314 1.ユーザーがこれらのアイコンの1つをクリックします。 2.そのアイコンが鳴り始める。 3.しばらくすると(この場合1秒)*点滅が止まります。 4.その後、 'checked' classNameが追加されます。 – stack