1.传递一个参数:

pg.TestScene.prototype.init = function () {
if (cc.Scene.prototype.init.call(this)) { var sprite = cc.Sprite.create(res.Bet_HighLighted_png);
sprite.setPosition(cc.p(cc.winSize.width/2, cc.winSize.height/2));
this.addChild(sprite, 1, 100); var moveToSeat = cc.moveTo(0.5, cc.p(200, 200));
var rotateBy = cc.rotateBy(0.5, 180);
var spawn = cc.spawn(moveToSeat, rotateBy);
var delayTime = cc.delayTime(2); // 写法一
var callFunc = cc.callFunc(function () {
console.log("1.sprite tag ==>" + sprite.getTag());
}, this);
// 写法二
// var callFunc = cc.callFunc(this.printLog, this, sprite);
var sequence = cc.sequence(spawn, delayTime, callFunc);
sprite.runAction(sequence);
return true;
}
return false;
}; pg.TestScene.prototype.printLog = function (sprite) {
console.log("2.sprite tag ==>" + sprite.getTag());
};

2.传递两个参数:

pg.TestScene.prototype.init = function () {
if (cc.Scene.prototype.init.call(this)) { var sprite = cc.Sprite.create(res.Bet_HighLighted_png);
sprite.setPosition(cc.p(cc.winSize.width / 2, cc.winSize.height / 2));
this.addChild(sprite, 1, 100); var moveToSeat = cc.moveTo(0.5, cc.p(200, 200));
var rotateBy = cc.rotateBy(0.5, 180);
var spawn = cc.spawn(moveToSeat, rotateBy);
var delayTime = cc.delayTime(2); var i = 0;
var callFunc = cc.callFunc(this.printLog, this, [i , sprite]);
var sequence = cc.sequence(spawn, delayTime, callFunc);
sprite.runAction(sequence);
return true;
}
return false;
}; pg.TestScene.prototype.printLog = function (target, data) {
console.log("i ==>" + data[0]);
console.log("sprite tag ==>" + data[1].getTag());
};

用法说明:

cc.callFunc(function(target, data) {
//target 默认是调用这个action的本体Node,Sprite等等
//data 传递的参数,多个参数可以用[data1, data2] 的Array方式组合 },
this, //通常绑定最外围的HelloWorldLayer 之类的, 可以方便调用, 比如为了removeChild data //参数,任意格式
);

cocos2d-js callFunc传参的更多相关文章

  1. EL表达式的js函数传参问题

    <!Doctype html> <html> <head> <title>js的传参问题</title> <script type=& ...

  2. js url传参,参数加密

    前台 function encode64(input) { var output = ""; var base = new Base64(); var output = base. ...

  3. js构造函数传参

    1.直接传参并用this关键字初始化属性 function Person(name,age,learn){ this.name = name; this.age = age; this.learn = ...

  4. js get 传参 汉字 乱码问题

    js encodeURI(encodeURI(searchWord)) java URLDecoder.decode(searchWord,"utf-8")

  5. 用js来传参到父网页实现

    今天搞了半天,用location.href提交参数到后台,结果php无法接收到参数,这让我找了半天,终于发现原因是本页被另外的主页引用了,最终发现问题出在提交js上,最终用parent.locatio ...

  6. js SetTimeout传参问题

    今天写代码遇到这样一个问题,先上代码 <!--JS方法--> function textout(obj){ if(opac==60){opac=0;return;}; opac+=10; ...

  7. js遍历传参到html

    <p id="subp" hidden><button id= "upsub"shiro:hasPermission="sys:me ...

  8. js遍历传参给html

    <p id="subp" hidden><button id= "upsub"shiro:hasPermission="sys:me ...

  9. JS 内部传参

随机推荐

  1. MyBatis原理分析之四:一次SQL查询的源码分析

    上回我们讲到Mybatis加载相关的配置文件进行初始化,这回我们讲一下一次SQL查询怎么进行的. 准备工作 Mybatis完成一次SQL查询需要使用的代码如下: ) { ); ) { throw ne ...

  2. Sublime Text 2/3安装使用及常用插件

    一.介绍 Sublime Text 是一款较新的编辑器,它轻量.简洁.高效,良好的扩展性以及跨平台等特性,使得越来越多的开发人员喜爱.它是一款收费的商业软件,但可以免费无限制无限期的试用,只会偶尔提醒 ...

  3. PICT安装与使用

    一.PICT简介 PICT工具是在微软公司推出的一款成对组合的命令行生成工具,下载地址http://download.microsoft.com/download/f/5/5/f55484df-849 ...

  4. JAVA源码走读(一) HashMap与ArrayList

    HashMap 一.HashMap基本概念: HashMap是基于哈希表的Map接口的实现.此实现提供所有可选的映射操作,并允许使用null值和null键.此类不保证映射的顺序,特别是它不保证该顺序恒 ...

  5. js产生随机数函数

    函数: //产生随机数函数 function RndNum(n){ var rnd=""; for(var i=0;i<n;i++) rnd+=Math.floor(Math ...

  6. 百度地图API地理位置和坐标转换

    1.由地名(省份.城市.街道等)得到其对应的百度地图坐标: http://api.map.baidu.com/geocoder/v2/?output=json&ak=你从百度申请到的Key&a ...

  7. 可重入锁 公平锁 读写锁、CLH队列、CLH队列锁、自旋锁、排队自旋锁、MCS锁、CLH锁

    1.可重入锁 如果锁具备可重入性,则称作为可重入锁. ========================================== (转)可重入和不可重入 2011-10-04 21:38 这 ...

  8. 在线开发工具helper

    发现一个很有用的在线工具大全:http://tool.lu/ 同时,欢迎查看新开i云轩工作室: logo在线制作:http://www.uugai.com/

  9. [Linux编程] module_param()函数学习笔记

    在读TCP cubic源码中,遇到了module_param(),网上查到的资料如下: 在用户态下编程可以通过main()来传递命令行参数,而编写一个内核模块则可通过module_param()来传递 ...

  10. Erlang 参考资料

    Erlang 官方文档 Distributed Erlang Erlang 教程中文版 %设定模块名 -module(tut17). %导出相关函数 -export([start_ping/1, st ...