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. [Linux] - 阿里云CentOS 6.5 安装Docker

    因为阿里云的CentOS 6.5版本默认内核kernel版本是2.6的,比较低.安装docker的后,运行不了. 步骤: 1.使用命令更新: yum update 2.安装Docker.这里忽略500 ...

  2. 百度地图api2.0体验

    前言:这两天在做百度地图的功能,查看了百度官网的api完成了基本功能 api地址http://developer.baidu.com/map/jshome.htm 注意是javascript API ...

  3. 开始使用DOJO(翻译)

    http://dojotoolkit.org/documentation/tutorials/1.10/start/index.html 我怎么开始学习DOJO?文档在哪?我如何获取支持和培训?我应该 ...

  4. SQLServer2005删除log文件和清空日志的方案

    数据库在使用过程中会使日志文件不断增加,使得数据库的性能下降,并且占用大量的磁盘空间.SQL Server数据库都有log文件,log文件记录用户对数据库修改的操作.可以通过直接删除log文件和清空日 ...

  5. win上搭建react-native android环境

    http://www.jianshu.com/p/2fdc4655ddf8 http://www.lcode.org/ http://www.jianshu.com/p/ad29d97b0e9d 学习 ...

  6. Java 技术文章摘录

    sokcet 编程实例 android bundle类 Android -- Looper.prepare()和Looper.loop() —深入版 Java NIO系列教程 XML操作 Androi ...

  7. 用Spring+Junit4.4进行测试(使用注解)

    http://nottiansyf.iteye.com/blog/345819 使用Junit4.4测试 在类上的配置Annotation @RunWith(SpringJUnit4ClassRunn ...

  8. web.py学习心得

    1.注意判断数字时,如果是get传递的参数,一定要用int转换.不然出错. 2.$var 定义时,冒号后的内容不是python内容,需加上$符号.如$var naviId:$naviId. 3.各个模 ...

  9. Java 如何将String转化为Int

    在 Java 中要将 String 类型转化为 int 类型时,需要使用 Integer 类中的 parseInt() 方法或者 valueOf() 方法进行转换. 例1: 1 2 3 4 5 6 S ...

  10. Solaris 自动挂载

    修改文件:vim /etc/vfstab添加命令:/dev/dsk/c2t0d0p0:1             -               /media/PARTITION1    pcfs   ...