概述1、获取URL中的请求参数的值----此方法接收参数名 1 2 3 4 5 6 function getQueryString(name) { var reg = new RegExp( "(^|&)" + name + "=([^&]*)(&|$)" , "i" ); var r = window.location.search.substr(1).match(re
1、获取URL中的请求参数的值----此方法接收参数名
1 2 3 4 5 6 functiongetqueryString(name){
varreg=
new
RegExp(
"(^|&)"
+name+
"=([^&]*)(&|$)"
,
"i"
);
varr=window.location.search.substr(1).match(reg);
if
(r!=null)
return
decodeURIComponent(r[2]);
null;
};
2、底图上添加文字---适用于按钮Sprite
6 7 8 9 10 varMybuttonSprite=cc.Sprite.extend({ ctor:function(filename,Title,Fontname,FontSize){
this
._super(filename);
varTitleLabel=
cc.LabelTTF(Title,FontSize);
.addChild(TitleLabel);
TitleLabel.x=
.getContentSize().wIDth/2;
TitleLabel.y=
.getContentSize().height/2;
}
});
3、远程图片加载
10 11 12 13 14 15 16 17 loadimgFromUrl:function(target,imgurl,p,tag){ (!imgurl)
;
varself=target;
varloadCb=function(err,img){
cc.textureCache.addImage(imgurl);
vartexture2d=
cc.Texture2D();
texture2d.initWithElement(img);
texture2d.handleLoadedTexture();
varsp=
cc.Sprite();
sp.initWithTexture(texture2d);
self.addChild(sp);
sp.x=p.x;
sp.y=p.y;
sp.tag=tag;
};
cc.loader.loadimg(imgurl,{isCrossOrigin:
false
},loadCb);
4、XMLhttpRequest
17 18 19 20 21 22 23 24 25 26 27 28 29 varsendRequest=function(url,params,isPost,callback,errorcallback){ (url==null||url==
''
)
;
varxhr=cc.loader.getXMLhttpRequest();
(isPost){
xhr.open(
"POST"
}
else
{
"GET"
}
xhr.setRequestheader(
"Content-Type"
"application/x-www-form-urlencoded"
);
xhr.onreadystatechange=function(){
(xhr.readyState==4&&xhr.status==200){
varresponse=xhr.responseText;
(callback)
callback(response);
else
(xhr.readyState==4&&xhr.status!=200){
varresponse=xhr.responseText;
(errorcallback)
errorcallback(response);
}
};
@H_255_403@
(params==null||params==
""
){
xhr.send();
@H_966_419@ {
xhr.send(params);
}
};
5、JsON解析以及上述第4条的回调方法
8 varcallback=function(response){ varjsonData=JsON.parse(response);
vardata=JsonData[
"users"
];
(data){
alert(data[
"name"
]);
//todosomething
}
};
6、自定义Loading界面
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 @H_502_563@ 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 @H_301_625@ 85 86 87 88 89 90 91 varMyLoaderScene=cc.Scene.extend({ _interval:null,
_length:0,
_count:0,
_label:null,
_classname:
"MyLoaderScene"
init:function(){
varself=
;
//bg
varbgLayer=self._bgLayer=cc.Layercolor.create(cc.color(32,32,255));
bgLayer.setposition(cc.visibleRect.bottomleft);
self.addChild(bgLayer,0);
//loadingpercent
varlabel=self._label=cc.LabelTTF.create(
"玩命加载中...0%"
"Arial"
label.setposition(cc.pAdd(cc.visibleRect.center,cc.p(0,0)));
label.setcolor(cc.color(180,180,180));
bgLayer.addChild(
._label,10);
return
true
;
@H_255_403@ _initStage:function(img,centerPos){
;
vartexture2d=self._texture2d=
cc.Texture2D();
@H_966_419@ texture2d.initWithElement(img);
texture2d.handleLoadedTexture();
varlogo=self._logo=cc.Sprite.create(texture2d);
logo.setScale(cc.contentScaleFactor());
logo.x=centerPos.x;
logo.y=centerPos.y;
self._bgLayer.addChild(logo,10);
onEnter:function(){
;
cc.Node.prototype.onEnter.call(self);
self.schedule(self._startLoading,0.3);
onExit:function(){
cc.Node.prototype.onExit.call(
);
vartmpStr=
;
._label.setString(tmpStr);
/**
*initwithresources
*@param{Array}resources
*@param{Function|String}cb
*/
initWithResources:function(resources,cb){
(typeofresources==
"string"
)resources=[resources];
.resources=resources||[];
.cb=cb;
_startLoading:function(){
;
self.unschedule(self._startLoading);
varres=self.resources;
self._length=res.length;
self._count=0;
cc.loader.load(res,function(result,count){self._count=count;},function(){
(self.cb)
self.cb();
});
self.schedule(self._updatePercent);
_updatePercent:function(){
;
varcount=self._count;
varlength=self._length;
varpercent=(count/length*100)|0;
percent=Math.min(percent,100);
self._label.setString(
"玩命加载中..."
+percent+
"%"
);
(count>=length)self.unschedule(self._updatePercent);
}
});
MyLoaderScene.preload=function(resources,cb){
var_myLoaderScene=null;
(!_myLoaderScene){
_myLoaderScene=
MyLoaderScene();
_myLoaderScene.init();
}
_myLoaderScene.initWithResources(resources,cb);
cc.director.runScene(_myLoaderScene);
_myLoaderScene;
};
7、网页跳转
1 window.location.href= "http://www.baidu.com"
8、关于进入游戏时黑屏时间较长的处理方法
1)
<bodystyle= "padding:0;margin:0;background:#000;"
>
删除index.HTML中<body>标签的样式background: #000;
2)按照自己需要添加编译模块 修改project.Json如
"modules"
:[
"core"
"actions"
"shape-nodes"
"labels"
"menus"
"Transitions"
"physics"
"chipmunk"
"gui"
],
本文由CocoaChina会员happyfhc总结,欢迎大家学习与讨论。
来源网址:http://www.cocoachina.com/bbs/read.php?tid=226079
总结 以上是内存溢出为你收集整理的Cocos2d-JS开发 中的一些小技巧(持续 更新 )全部内容,希望文章能够帮你解决Cocos2d-JS开发中的一些小技巧(持续更新 )所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
赞
(0)
打赏
微信扫一扫
支付宝扫一扫
评论列表(0条)