首先我们来看看html文件里的代码:
>
<html>
<head>
<meta charset="utf-8" />
<title>html5 game - 仿jquerytitle>
<script type="text/javascript" src="./js/lufylegend-1.6.1.min.js">script>
<script type="text/javascript" src="./js/main.js">script>
head>
<body>
<div id="mylegend">loading……div>
body>
html> 看完初始化部分,我们不仿来看看是怎样做到能使一个矩形来回减速加速滑行。首先我们来看看main.js里的代码:
init(50,"mylegend",800,400,main);
var backLayer;
var speed = 20,x = 0;
function main(){
//加入层
initLayer();
//开始移动
setInterval(function(){move();},10);
}
function initLayer(){
//加入背景层
backLayer = new LSprite();
addChild(backLayer);
}
function move(){
//清空背景
backLayer.graphics.drawRect(0,"white",[0,0,800,400],true,"white");
//绘制矩形
backLayer.graphics.drawRect(0,"dimgray",[x+=speed,0,200,200],true,"gray");
//将速度逐渐变小
speed--;
//当速度小于或等于-20时,将速度重新设为20
if(speed <= -20){
speed = 20;
}
} 举个例子:
var loader;
init(200,"mylegend",500,350,main);
function main(){
loader = new LLoader();
loader.addEventListener(LEvent.COMPLETE,loadBitmapdata);
loader.load("img.png","bitmapData");
}
function loadBitmapdata(event){
var bitmapdata = new LBitmapData(loader.content,0,0,64,64);
var bitmap = new LBitmap(bitmapdata);
var layer = new LSprite();
addChild(layer);
layer.addChild(bitmap);
} 当层初始化完成后,就可以开始移动矩形了。首先我用setInterval不断地画矩形,为了不让矩形重叠,我让它每画一次,清空一次屏幕。
//清空背景 backLayer.graphics.drawRect(0,"white",[0,0,800,400],true,"white"); //绘制矩形 backLayer.graphics.drawRect(0,"dimgray",[x+=speed,0,200,200],true,"gray");
以上代码实现了不断画矩形。可以看到,我是在backLayer层上实行绘制的。至于graphics的用法,我将它列在下面:
drawRect(
thickness,
lineColor,
pointArray,
isfill,
color
) 接下来就是改变速度。首先我将每次移动的速度减少1,然后进行一次重新绘制。这样的画就可以进行减速加速滑行。速度减少成了负数就会往反方向走,但如果减少的太多就会移出屏幕,所以给它一个限制:
if(speed <= -20){
<span style="white-space:pre"> </span>speed = 20;
} 以上就是HTML5制作仿jQuery效果的内容,更多相关内容请关注PHP中文网(HdhCmsTestgxlcms测试数据)!
查看更多关于HTML5制作仿jQuery效果的详细内容...
声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did69529