javascript - Empat kira detik, fungsi dicetuskan apabila ia mencapai 0. Jika penalti dikenakan pada masa yang sama, bagaimanakah peristiwa pencetus boleh dilaksanakan sekali sahaja?
大家讲道理
大家讲道理 2017-06-12 09:23:23
0
3
751

Fungsi penalti apabila kira detik ialah 0. Dalam satu kes, apabila keempat-empat kira detik ialah 0, kaedah ajax() akan dicetuskan pada masa yang sama, saya hanya mahu mencetuskannya sekali.
Saya cuba mengisytiharkan kiraan untuk dikira, dan kaedah ajax() tidak akan dilaksanakan jika ia melebihi 1, tetapi ini mungkin tidak melaksanakan kiraan seterusnya kerana ia tidak memenuhi logik bahawa kiraan itu tidak melebihi 1. Apa yang sepatutnya Saya sudi?

html
<span class="clock">4:00</span>//倒计时是循环的,到0后恢复为4分钟,其他一样
<span class="clock">3:00</span>
<span class="clock">2:00</span>
<span class="clock">1:00</span>

js
$('.clock').each(function(elem,index){
  $(this).on('finish',function(){//倒计时为0时触发ajax()方法
    ajax();
  });
});
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

membalas semua(3)
大家讲道理

JS adalah satu-benang jadi ia tidak akan dicetuskan pada masa yang sama Anda boleh mengekalkan pembolehubah untuk merekodkan masa apabila fungsi tersebut terakhir dilaksanakan Jika selang terlalu dekat, ia tidak akan dilaksanakan untuk kali kedua.

伊谢尔伦

Tentukan pembolehubah sebagai status permintaan Lalai adalah palsu, yang bermaksud tiada permintaan pada masa ini Sebelum memulakan permintaan, tentukan sama ada ia benar, ini bermakna permintaan terakhir tidak diteruskan ia kepada benar dan mula melaksanakan permintaan kaedah lengkap Ajax Tetapkan untuk memulihkan status kepada palsu tanpa mengira kejayaan atau kegagalan supaya ia tersedia untuk permintaan seterusnya. Iaitu, gunakan pembolehubah global atau tempatan untuk mengawal keadaan.

漂亮男人

Cuba ini:

let loading = false
$('.clock').each(function () {
    $(this).on('finish', function () {
        if (loading) return
        loading = true
        ajax({
            finish: function () {
                loading = false
            }
        })
    })
})
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan