cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Terdapat terlalu banyak pemasa dalam skrip js, bagaimana untuk menyelesaikan konflik?

Keperluan perniagaan, pelbagai tugas berjadual ditulis dalam skrip js, seperti berikut:

setTimeout(cron, 120000);//定时上传记录信息
setTimeout(start_init, 350000);

function cron() {
    $.post('cron.php', {state: 'cron'}, function(data) { });
    setTimeout(cron, 120000);
}

function start_init() {
    $.post('start_init.php', {state: 'start_init'}, function(data) { });
    setTimeout(start_init, 350000);
}

/**
* 这段是逻辑处理
**/
var clear_t;
document.onkeydown = function(e){  
    var ev = document.all ? window.event : e;
    if(ev.keyCode==13) {
        clearTimeout(clear_t);

        $.post('ajax.php', send_data, function(data) {
            var jsonRes = JSON.parse(data);
            if(jsonRes.status == 202) {
                /**业务代码块**/

            }else if(jsonRes.status == 200 || jsonRes.status == 2000) {
                /**业务代码块**/

            }else {
                /**业务代码块**/
            }
            clear_t = setTimeout(clear_content, 5000);
        }
    }
}

/**
 * 更改页面部分信息的方法
 */
function clear_content() {
    $("#username").text('******'); 
    $("#useroperations").text('******'); 
    $("#last_balance").text(0);
    $("#consum").text(0); 
    $("#now_balance").text(0);
    local_soc.emit('cum_num', 0);
}

Seperti yang ditunjukkan dalam kod di atas (代码最上面的两个定时器没有什么特别意义,贴出来是为了说明这个脚本中定时器很多),js脚本中用到了很多的定时器,那么这些定时器,异步向服务器发送请求的就不说了,就是更改页面部分信息clear_contentDi sini dalam kaedah, kadangkala ia mudah untuk dipecahkan, dan kod ini tidak akan dilaksanakan dari semasa ke semasa. Adakah ini disebabkan oleh konflik berbilang pemasa? Jadi bagaimana untuk mengelakkan masalah sedemikian ? Atau Bagaimanakah saya boleh menambah baik blok kod ini?

Dengan cara ini, nota khas adalah untuk menangkap acara masuk tetikus, iaitu, blok kod bawah dilaksanakan dengan sangat kerap, hampir

akan dilaksanakan sekali. 3~5s

迷茫迷茫2807 hari yang lalu1089

membalas semua(1)saya akan balas

  • 仅有的幸福

    仅有的幸福2017-06-06 09:55:37

    https://zhuanlan.zhihu.com/p/...

    balas
    0
  • Batalbalas