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 内部传参
随机推荐
- Debugging Maya Plugin(C++) with CodeBlocks in Linux
My system is CentOS7 x64, Maya2015 x64 for Linux. - Make sure that your project is built with flag - ...
- MVC4中 访问webservice 出现无法找到资源的错误
出现这个情况,是mvc将webservice.asmx解析成了控制器,下面先将这个控制器忽略 继续访问出现这样的错误: 下面修改配置文件 访问成功
- Java 多张图片合成一张 drawImage
package com.yunfengtech.solution.business; import java.awt.Color; import java.awt.Graphics; import ...
- .NET DataSet、DataTable操作记录
一直在习惯.net的编程思维,或是说C#吧.因为前几年一直在用PHP做站,现在用.net很不习惯,主要C#都依赖对控件.类的熟悉,不然很多功能都实现不了. 需求 最近做了一功能,从SQL Server ...
- WinForm中TreeView控件实现鼠标拖动节点(可实现同级节点位置互换,或拖到目标子节点)
;//1:不同级, 不为1:拖同级 private void treeView1_ItemDrag(object sender, ItemDragEventArgs e) { if (e.Button ...
- 搞定迅雷固件在TP-LINK WR720N,127.0.0.1 9000 获取不到激活码
本帖最后由 exzzzipad 于 2014-7-2 22:33 编辑 基本情况:设备:TP-LINK WR720N目前固件:[antclan][20120825]720N-4M-NAS-withSA ...
- 【转】日期工具类DateUtils
转自csdn,原作者:jzhf2012 package date.util; import java.text.ParseException; import java.text.SimpleDateF ...
- 使用Azure Blob存储
可以通过多种方式来对Azure Blob进行操作.在此我们介绍通过VS的客户端及代码两种方式来操作Blob. 一.通过VS来操作Blob. 1.首先下载publish settings 文件:打开“h ...
- 【练习】数据移动---导入(IMPDP)
1.导入表并验证: :: SYS@ORA11GR2>grant connect,resource to jj identified by jj; Grant succeeded. :: SYS@ ...
- ios 给图片添加水印
//第一种添加水印方法 -(UIImage *)watermarkImage:(UIImage *)img withName:(NSString *)name{ NSString* mark = na ...