zoukankan      html  css  js  c++  java
  • settimeout,cleartimeout的使用分析

         设置时间的定时轮回执行,大家想到的js也就是settimeout这个方法,这个方法确实能够实现定时反复执行的功能,clearttimeout这是清理或者是暂停轮回执行的情况。可是发现clearttimeout清理不了上次执行的settimeout句柄,到底怎么回事,是clearttimeout方法不好使?带着这个问题,我开始翻阅今天编写的代码,在js中,settimeout方法会返回一个int类型的数据,俗成为定时器编号或者ID,这个编号能够标识改定时器的唯一性,clearttimeout则用该ID,清理该计时器。那么不能清理,一定是clearttimeout对应的ID不是创建setttimeout对应的ID,带着这个疑问,我打印日志,发现确实不是同一个ID。

    我定义全局的变量来记录settimeout对应的ID,这个ID怎么会变那?带着这个疑问,我又开发翻阅代码,最后才发现,在Jquery中,我们使用click事件调用的名称是click,而普通网页响应用户点击事件用的是onclick,就是这两个单词不同,导致了,我后续定时器关闭不了,既然找到问题,我就用jquery绑定点击事件。

    $(function(){
       $("c#btnclicknum").bind("click",function(){........要处理代码块.....
              $(this).unbind();    
        }); 
    })

    统一使用Jquery的方法,就可以解决定时器销毁的问题。

    针对Jquery ,使用的时候,一定记得那些事jquery的方法,不可以与html方法混合使用,即时混合使用,一定要区分好怎么使用。

  • 相关阅读:
    验证码帮助类
    UDP聊天
    SoapHeader的使用
    单条目选择控件
    Redis命令总结
    PHP解决抢购、秒杀、抢楼、抽奖等阻塞式高并发库存防控超量的思路方法
    Python3经典100道练习题004
    Python3经典100道练习题001
    tkinter笔记01创建第一GUI
    Python3经典100道练习题006
  • 原文地址:https://www.cnblogs.com/xibei666/p/5059629.html
Copyright © 2011-2022 走看看