CreateJSのTweenJS、SoundJS、PreloadJS
TweenJS基础实例:
var canvas = document.getElementById('myCanvas'),
stage = new createjs.Stage(canvas);
var stageWidth = canvas.width;
var stageHeight = canvas.height;
var characterWidth = 75;
var characterHeight = 96;
var spritesheet;
var charactor;
window.onload = function(){
spritesheet = new createjs.SpriteSheet({
'images': ['http://cdn.gbtags.com/gblibraryassets/libid108/charactor.png'],
'frames': {"height": 96, "count": 10, "width": 75}
});
charactor = new createjs.Sprite(spritesheet);
charactor.x = (stageWidth - characterWidth)/2;
charactor.y = (stageHeight - characterHeight)/2;
stage.addChild(charactor);
charactor.play();
/*
* 以下代码生成了tween动画人物相关效果
*/
// 生成上下移动人物效果(一次性)
createjs.Tween.get(charactor, {loop:false})
.to({y:150}, 500, createjs.Ease.quadInOut)
.to({y:50}, 500, createjs.Ease.quadInOut);
// 生成人物左右移动效果(无限循环)
createjs.Tween.get(charactor, {loop:true})
.wait(3000)
.call(charactor.gotoAndStop, [5], charactor)
.wait(300)
.to({x:450}, 1200, createjs.Ease.backInOut)
.call(charactor.gotoAndStop, [0], charactor)
.wait(2000)
.call(charactor.gotoAndStop, [5], charactor)
.wait(300)
.to({x:(stageWidth - characterWidth)/2}, 500, createjs.Ease.backInOut)
.call(charactor.gotoAndStop, [0], charactor);
createjs.Ticker.setFPS(35);
createjs.Ticker.addEventListener("tick", tick);
function tick(){
stage.update();
}
};
SoundJS播放音频
createjs.Sound.alternateExtensions = ['mp3'];
createjs.Sound.on('fileload', this.loadHandler, this);
createjs.Sound.registerSound('endless.mp3', 'sound'); function loadHandler(event) {
// 这会引发针对每个已注册的声音
var instance = createjs.Sound.play('sound');
instance.on('complete', this.handleComplete, this);
instance.volume = 0.5
}
PreloadJS加载文件
var canvas = document.getElementById("myCanvas");
var stage = new createjs.Stage(canvas);
var manifest;
var preload;
var progressText = new createjs.Text("", "20px Arial", "#dd4814");
progressText.x = 125 - progressText.getMeasuredWidth() / 2;
progressText.y = 20;
stage.addChild(progressText);
stage.update();
//定义相关JSON格式文件列表
function setupManifest() {
manifest = [{
src: "lib/easeljs-0.8.2.min.js",
id: "easeljs"
}, {
src: "resource/4d8f3f13-89c0-455c-95f3-ba5120c2f123.jpg",
id: "logo"
}, {
src: "endless.mp3",
id: "audiofile"
}
];
for(var i=1;i<=10;i++)
manifest.push({src:"resource/200x200"})
}
//开始预加载
function startPreload() {
preload = new createjs.LoadQueue(true);
//注意加载音频文件需要调用如下代码行
preload.installPlugin(createjs.Sound);
preload.on("fileload", handleFileLoad);
preload.on("progress", handleFileProgress);
preload.on("complete", loadComplete);
preload.on("error", loadError);
preload.loadManifest(manifest);
}
//处理单个文件加载
function handleFileLoad(event) {
console.log("文件类型: " + event.item.type);
if(event.item.id == "logo"){
console.log("logo图片已成功加载");
}
}
//处理加载错误:大家可以修改成错误的文件地址,可在控制台看到此方法调用
function loadError(evt) {
console.log("加载出错!",evt.text);
}
//已加载完毕进度
function handleFileProgress(event) {
progressText.text = "已加载 " + (preload.progress*100|0) + " %";
stage.update();
}
//全度资源加载完毕
function loadComplete(event) {
console.log("已加载完毕全部资源");
}
setupManifest();
startPreload();
CreateJSのTweenJS、SoundJS、PreloadJS的更多相关文章
- Axios、Lodash、TweenJS
Axios是一个基于promise的HTTP库 http://chuansong.me/n/394228451820 Lodash是一个JavaScript的函数工具集 http://www.css8 ...
- easelJS入门、事件、spritesheet
easelJS入门.事件.spritesheet <%@ page language="java" contentType="text/html; charset= ...
- Web 建站技术中,HTML、HTML5、XHTML、CSS、SQL、JavaScript、PHP、ASP.NET、Web Services 是什么(转)
Web 建站技术中,HTML.HTML5.XHTML.CSS.SQL.JavaScript.PHP.ASP.NET.Web Services 是什么?修改 建站有很多技术,如 HTML.HTML5.X ...
- javascript中的Array对象 —— 数组的合并、转换、迭代、排序、堆栈
Array 是javascript中经常用到的数据类型.javascript 的数组其他语言中数组的最大的区别是其每个数组项都可以保存任何类型的数据.本文主要讨论javascript中数组的声明.转换 ...
- vmware里面的名词 vSphere、vCenter Server、ESXI、vSphere Client
vmware里面的名词 vSphere.vCenter Server.ESXI.vSphere Client vSphere.vCenter Server.ESXI.vSphere Client VS ...
- 深入理解DIP、IoC、DI以及IoC容器
摘要 面向对象设计(OOD)有助于我们开发出高性能.易扩展以及易复用的程序.其中,OOD有一个重要的思想那就是依赖倒置原则(DIP),并由此引申出IoC.DI以及Ioc容器等概念.通过本文我们将一起学 ...
- 从Script到Code Blocks、Code Behind到MVC、MVP、MVVM
刚过去的周五(3-14)例行地主持了技术会议,主题正好是<UI层的设计模式——从Script.Code Behind到MVC.MVP.MVVM>,是前一天晚上才定的,中午花了半小时准备了下 ...
- JavaScript var关键字、变量的状态、异常处理、命名规范等介绍
本篇主要介绍var关键字.变量的undefined和null状态.异常处理.命名规范. 目录 1. var 关键字:介绍var关键字的使用. 2. 变量的状态:介绍变量的未定义.已定义未赋值.已定义已 ...
- HTML 获取屏幕、浏览器、页面的高度宽度
本篇主要介绍Web环境中屏幕.浏览器及页面的高度.宽度信息. 目录 1. 介绍:介绍页面的容器(屏幕.浏览器及页面).物理尺寸与分辨率.展示等内容. 2. 屏幕信息:介绍屏幕尺寸信息:如:屏幕.软件可 ...
随机推荐
- IIS mime类型 任意类型
HTTP头 任意mime类型 .* application/octet-stream
- AngularJS学习--- AngularJS中XHR(AJAX)和依赖注入(DI) step5
前言:本文接前一篇文章,主要介绍什么是XHR,AJAX,DI,angularjs中如何使用XHR和DI. 1.切换工具目录 git checkout -f step- #切换分支 npm start ...
- easyui中tree使用simpleData的形式加载数据
了解了zTree的使用, 发现它的simpleData是非常好用的, 由后台返回一个扁平数据, 直接在前台解析成树形菜单, 网上查了一下, easyui也可以简单实现, 不过....没看懂, 先记录一 ...
- python学习之路-day5-模块
本节内容: 模块详解 1.模块定义 2.os&sys模块 3.time&datetime模块 4.random模块 5.shutil模块 6.shelve模块 7.configpars ...
- 【Java】XML解析之JDOM
JDOM介绍 JDOM是一个开源项目,它基于树型结构,利用纯JAVA的技术对XML文档实现解析.生成.序列化以及多种操作.使用jdom需要引入jdom.jar包. XML生成及解析 代码如下: pac ...
- asp.net简单小爬虫
所谓爬虫简单点说,就是把别人网站上的东西爬下来,至于爬做什么用就看你自己了,比如:把别人网站上的东西爬下来放在自己网站中(感觉有点像小偷^v^). 这里随便写了一个爬虫代码(可以自己再去进行完善): ...
- Git创建 项目
一 . github上创建立一个项目 用户登录后系统,在github首页,点击页面右下角“New Repository” 填写项目信息: project name: hibernate-demo d ...
- 12.我们不是在真空里谈软件工程, 软件要运行在硬件芯片上面, 下面看看一个计算机芯片的发展历史: http://perspectives.mvdirona.com/2014/09/august-21-2014-computer-history-museum-presentation/ http://mvdirona.com/jrh/TalksAndPapers/DileepBhandar
电脑芯片的诞生和发展是20世纪最伟大的发明之一,芯片技术决定了计算机升级换代的速度,决定了计算机小型化实现的程度,决定了计算机智能化的程度,决定了计算机普及化的应用深度. 1971年11月15日,英特 ...
- [ASE][Daily Scrum]11.24
今天开会总结了一下第一周的进度,讨论了无限地图的访存方法,做了简单的人员调整, Client的包接收分析与服务器通信这块基本上完成了, 之后Jiafan Zhu会开始和Junbei以及Songtao一 ...
- ftp客户端命令使用简记
OS:windows8.1评估版 程序和功能 tftp客户端勾选上 Win+R:运行,键入cmd,键入ftp -help 如下图: 使用ftp客户端可以做的事:将文件传送到运行FTP服务器服务(经常称 ...