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 内部传参
随机推荐
- Redis的AOF是怎么实现的
今天通过阅读AOF的实现代码,牵出了许多本来不是必须的话题,也都记下来先: Redis自己搞了一套事件循环机制: http://itindex.net/detail/26944-redis-%E4%B ...
- [经验交流] Active-Active 方式设置 kubernetes master 多节点高可用
关于 kubernetes master 多节点以及高可用,网上的方法多采取 Active-Standby 方式,即: 通过 pacemaker 等软件使得某种 master 服务(apiserver ...
- C#矩阵运算类库
这个类库是本人参考许多相关资料之后做出的C#矩阵运算类库,因为C#的数值计算库相对比较少,所以希望这个类库能够给大家带来一些帮助. 源码github网址:https://github.com/Josh ...
- JAVA 取得当前目录的路径/Servlet/class/文件路径/web路径/url地址
在写java程序时不可避免要获取文件的路径...总结一下,遗漏的随时补上 1.可以在servlet的init方法里 String path = getServletContext().getRealP ...
- eclispe中在线安装maven插件
启动Eclipse之后,在菜单栏中选择Help,然后选择Install New Software-,接着你会看到一个Install对话框, 点击Work with:字段边上的Add按钮,你会得到一个新 ...
- [ActionScript 3.0] AS3.0和AS2.0的相互通信
AS3和AS2之间的通信,最好的方式可能就是LocalConnection了. AS2向AS3发送数据,即AS2调用AS3的函数: as2.0代码(按钮上写的发送信息代码): on (release) ...
- twitter点赞动画详解
今天在微博上看到@过气网红一丝 的一篇微博,codepen上贴出了twitter点赞那个动画效果的源码,地址 http://codepen.io/yisi/pen/LpXVJb .我看了下效果很好看, ...
- Nice Validator(Form验证)及Juery zTree控件
http://niceue.com/validator/demo/match.php http://www.ztree.me/v3/demo.php#_603
- UEFI+GPT引导基础篇(一):什么是GPT,什么是UEFI?
其实关于UEFI的几篇文章很早就写下了,只是自己读了一遍感觉很不满意,就决定重写.目的是想用最简单直白的语言把内容写出来,让每个人都能轻松读懂.当然,如果你已经对这些内容有了很深的理解的话,这篇文章除 ...
- c# 利用结构体获取json数据
最近做微信支付,要获取用户的openid,调用接口后返回的是json格式的数据,我想在c#后台把数据逐一取出,网上查了查,找到以下方法: 1.首先调用接口,要有一个post数据到指定url并返回数据的 ...