cocos2d-js的定时器的创建跟使用:

情况一:

  1. var TestLayer = cc.Layer.extend({
  2. sprite:null,
  3. ctor:function () {
  4. this.scheduleUpdate();
  5. },
  6. update: function () {
  7. //每一帧都会调用update这个函数
  8. }
  9. });

情况二:

  1. var TestLayer = cc.Layer.extend({
  2. sprite:null,
  3. ctor:function () {
  4. this.schedule(this.updateData,0.1);
  5. },
  6. updateData: function () {
  7. //会根据this.schedule第二个参数的时间来调用updataData函数
  8. }
  9. });

cocos2d-js定时器的销毁unschedule,unscheduleAllCallbacks

一种是针对个别的计时器销毁:unschedule通过调用的函数名销毁

  1. var TestLayer = cc.Layer.extend({
  2. sprite:null,
  3. ctor:function () {
  4. this.schedule(this.updateData,0.1);
  5. this.removeSchedule()
  6. },
  7. updateData: function () {
  8. //会根据this.schedule第二个参数的时间来调用updataData函数
  9. this.unscheduleAllCallbacks()
  10. },
  11. /**
  12. * 删除计时器
  13. */
  14. removeSchedule: function () {
  15. this.unschedule(this.updateData);//通过函数名update删除
  16. }
  17. });

unschedule,unscheduleAllCallbacks是无论有几个定时器全部都删除了:

    1. var TestLayer = cc.Layer.extend({
    2. sprite:null,
    3. ctor:function () {
    4. this.schedule(this.updateData,0.1);
    5. this.removeSchedule()
    6. },
    7. updateData: function () {
    8. //会根据this.schedule第二个参数的时间来调用updataData函数
    9. this.unscheduleAllCallbacks()
    10. },
    11. /**
    12. * 删除计时器
    13. */
    14. removeSchedule: function () {
    15. this.unscheduleAllCallbacks();//全部删除
    16. }
    17. });

cocos JS 定时器的更多相关文章

  1. js定时器的使用(实例讲解)

    在javascritp中,有两个关于定时器的专用函数,分别为: 1.倒计定时器:timename=setTimeout("function();",delaytime);2.循环定 ...

  2. 移动Web与js定时器暂停或不准确计时的问题解决

    PC 上的 Firefox.Chrome 和 Safari 等浏览器,都会自动把未激活页面中的 JavaScript 定时器(setTimeout.setInterval)间隔最小值改为 1 秒以上: ...

  3. js定时器 特定时间执行某段程序的例子

    定时器想必大家并不陌生吧,在本文为大家详细介绍下js中是如何实现定时器的,具体原理及代码如下. 例子: $(function(){ var handler = function(){ //www.jb ...

  4. js定时器setInterval()与setTimeout()

    js定时器setInterval()与setTimeout() 1.setTimeout(Expression,DelayTime),在DelayTime过后,将执行一次Expression,setT ...

  5. C#-WebForm JS定时器

    JS定时器: 1.window.setTimeout(function(){},3000) 延迟3秒执行 2.window.setInterval(function(){},3000) 也叫重复器,每 ...

  6. Vue清除所有JS定时器

    Vue清除所有JS定时器 在webpack + vue 的项目中如何在页面跳转的时候清除所有的定时器 JS定时器会有一个返回值(数字),通过这个返回值我们可以找到这个定时器 在vue项目中可以使用路由 ...

  7. js定时器关闭,js定时器停止,一次关闭所有正在运行的定时器,自定义函数clearIntervals()一次关闭所有正在运行的定时器

    js定时器关闭,一次关闭所有正在运行的定时器,自定义函数clearIntervals()一次关闭所有正在运行的定时器,原理:利用数组存储定时器id,然后遍历数组,关闭定时器 附上页面的截图,代码在截图 ...

  8. JS定时器做物体运动

    JS定时器是函数 setInterval(函数体/函数名  , 时间) 清楚定时器 clearInterval(函数) 时间单位(毫秒) 1000毫秒  = 1秒 首先我们要知道用JS定时器能干什么? ...

  9. JS 定时器的4种写法及介绍

    JS提供了一些原生方法来实现延时去执行某一段代码,下面来简单介绍一下setTiemout.setInterval.setImmediate.requestAnimationFrame. 一.什么是定时 ...

随机推荐

  1. robot framework教程-------虫师

    http://www.testclass.net/2017/09/28/happy-holidays/

  2. influxdb服务器 relay

    https://www.influxdata.com/time-series-platform/influxdb/ https://www.xusheng.org/blog/2016/07/30/pe ...

  3. 最全的MonkeyRunner自动化测试从入门到精通(1)

    一.环境变量的配置 1.JDK环境变量的配置 步骤一:在官网上面下载jdk,JDK官网网址: http://www.oracle.com/technetwork/java/javase/downloa ...

  4. router 设置时 模板的新引法

    { path: '/Index1', name: 'Index', component: () => import ('@/components/Index.vue') },

  5. es6 学习二 Generator

    安装babel的拓展包(Polyfill) ,对Generator的转义 这是一个补完babel支持es6的拓展包,配置步骤为3个: 打开命令行键入 npm install --save-dev ba ...

  6. (1.6)MySQL执行计划

    关键词:mysql执行计划 1.用法 [1.1]explain select * from tab_name........ [1.2]desc select * from tab_name..... ...

  7. 两个js冲突怎么解决?试试这四个方法

    两个js冲突很让前端头疼,虽然jquery是通用的,但调用不同经常会出问题.jQuery是目前流行的JS封装包,简化了很多复杂的JS程序,JQuery讲浏览器DOM树定义为$,通过$来获取各个子节点. ...

  8. 如何为DigitalOcean上的服务器配置SSH密钥

    本指南适用于mac OS和Linux,windows用户请绕道. 通常,当你启动DigitalOcean droplets时,只要过程完成,你会收到一封电子邮件,让你知道droplets的IP地址和密 ...

  9. cookie存值 后取值是string string字符串转对象

    实现方法 // 得到 对象 格式或 json 格式的一个字符串 var str = '{"name":"张根硕","age":"1 ...

  10. 向数据库中添加数据,通过se16 不能添加,通过 代码可以添加的原因

    1:  在向数据库中添加数据时,通过客户端se16 准备对 数据表进行添加数据,提示如下: 找了以下原因,如下: https://www.baidu.com/link?url=3yRtAfY1_9XG ...