cocos2d-js callFunc传参
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传参的更多相关文章
- EL表达式的js函数传参问题
<!Doctype html> <html> <head> <title>js的传参问题</title> <script type=& ...
- js url传参,参数加密
前台 function encode64(input) { var output = ""; var base = new Base64(); var output = base. ...
- js构造函数传参
1.直接传参并用this关键字初始化属性 function Person(name,age,learn){ this.name = name; this.age = age; this.learn = ...
- js get 传参 汉字 乱码问题
js encodeURI(encodeURI(searchWord)) java URLDecoder.decode(searchWord,"utf-8")
- 用js来传参到父网页实现
今天搞了半天,用location.href提交参数到后台,结果php无法接收到参数,这让我找了半天,终于发现原因是本页被另外的主页引用了,最终发现问题出在提交js上,最终用parent.locatio ...
- js SetTimeout传参问题
今天写代码遇到这样一个问题,先上代码 <!--JS方法--> function textout(obj){ if(opac==60){opac=0;return;}; opac+=10; ...
- js遍历传参到html
<p id="subp" hidden><button id= "upsub"shiro:hasPermission="sys:me ...
- js遍历传参给html
<p id="subp" hidden><button id= "upsub"shiro:hasPermission="sys:me ...
- JS 内部传参
随机推荐
- 自动化运维:网站svn代码上线更新(flask+saltstack)
阶段性总结: 跌跌撞撞的用了一周左右的时间做完了网站自动升级功能,中间遇到了很多的问题,也学到了很多,在此做一个总结. 1.整体架构: 后台:nginx+uwsgi #nginx提供w ...
- sqlserver添加表、字段注释
引用 :http://begoodluck.blog.163.com/blog/static/20450728020141191412788/ 1.sqlserver用语句给表注释EXECUTE sp ...
- USVN
我们最近将快盘上的东西迁移到了svn上,因为快盘总是不会不小心删掉或者修改了某些文件.为了能保留历史记录我们统一迁移到svn上.为了方便权限管理,我对比了几个svn的权限管理工具,最后觉得还是usvn ...
- python调用外部子进程,通过管道实现异步标准输入和输出的交互
我们通常会遇到这样的需求:通过C++或其他较底层的语言实现了一个复杂的功能模块,需要搭建一个基于Web的Demo,方法查询数据.由于Python语言的强大和简洁,其用来搭建Demo非常合适,Flask ...
- SQLServer的学习场景(关于row_number()和COALESCE()的使用)
--使用Sql语句,统计出每辆汽车每天行驶的里程数(不是总里程) 以下为脚本 CREATE TABLE [dbo].[CarData]([CarID] [int] NULL,[Mileage] [in ...
- 理解Condition的用法
这个示例中BoundedBuffer是一个固定长度的集合,这个在其put操作时,如果发现长度已经达到最大长度,那么会等待notFull信号,如果得到notFull信号会像集合中添加元素,并发出notE ...
- shared_ptr 线程安全
Then what's really happening is TWO different sections of memory are being allocated. It's done at o ...
- 【转载】变更MySql数据存储路径的方法
1.在mysql安装目录下找到my.ini文件,更改#Path to the database root datadir="希望存放数据的地址" 2.将默认存放路径(一般为&quo ...
- jQuery 中对 CommonJs 的支持处理
jQuery 中对 CommonJs提供了直接支持,可以在 CommonJs模块中直接引用 jQuery 对象,这是如何实现的呢? 从 factory 函数说起 说先看 jQuery 的主体函数定义, ...
- 总结一下 input propertychange
最近做的一些项目,经常遇到输入框检查的需求,最常见的是即时搜索,今天好好小结一下. ========================================================== ...