js定时器的结束和开始

今天在做一个页面的报表的时候,需要在报表内容改变后屏蔽掉页面上的一些选择框。

因为这个报表是自身的链接实现的改变,我只能读取到history改变了,基于这个来判断

我写了一个判断条件,然后将他放在了一个定时器里面执行,相当于是一个监听器吧

 //定时器监听history的改变
    var timer =null;
    timer=setInterval(function(){
        if(history.length !=  historyNum){
       //屏蔽掉月份单位选择框,查看按钮变成返回按钮。
       $("#selectBoxHibbenOrShow").hide(); 
       $("#viewLogOrBack").text("返回"); 
       //关闭定时器  
       clearInterval(timer); 
     }
    },100);

上述代码中的clearInterval(timer);就是关闭定时器的方法;

然后又出现了一个问题,当我返回这个页面的时候还需要这个定时器跑起来,我查了一下,没找到开启定时器的方法,

不过有一个前辈重新写了一遍同名的定时器,这样也实现了重新开启的方法,我照着写了一个,还是很好使的。

实现了功能。

//判断当前的按钮是查看还是返回,如果是返回,就先改变成查看,然后打开监听history改变的定时器,显示月份单位的选择框
         var buttonText = $("#viewLogOrBack").text();   
         if(buttonText=="返回"){
            $("#viewLogOrBack").text("查看");
            $("#selectBoxHibbenOrShow").show();
            //开启定时器
            timer=setInterval(function(){
                if(history.length !=  historyNum){
               //屏蔽掉月份单位选择框,查看按钮变成返回按钮。
               $("#selectBoxHibbenOrShow").hide(); 
               $("#viewLogOrBack").text("返回");   
               clearInterval(timer); 
             }
            },100);
         }
原文地址:https://www.cnblogs.com/anningkang/p/9361231.html