用Adobe animate写动画课件时,经常用到的代码1

用Adobe animate写动画课件时,经常用到的代码

Adobe animate 软件中,写一个课件,需要元件,createjs代码。

一般的,用animate写课件时,会用到下列代码。
主要是用createjs代码来写的,不会的操作直接去createjs中文网查询API文档。
常用代码模板:
通常,在animate中编写代码时,会先写下面两句代码。
stage.enableMouseOver(); //当前舞台可点击
this.stop();

//this在这里代指舞台:stage。

/---------------------start------------------------------/
下列代码是要点击元件的特效函数,就是鼠标移到上面时,会动态的放大,鼠标离开后,会恢复到原来的位置。
调用的方法如下:

var buttom = this.buttom;//定义一个叫buttom的变量,让他等于this.buttom,第二个buttom是舞台上的元件名。

//在addEventListener监听事件中套用函数模板
buttom.addEventListener(“mouseover”, buttonover);
buttom.addEventListener(“mousedown”, buttondown);
buttom.addEventListener(“mouseout”, buttonout);

buttom.cursor = “pointer”; //鼠标停在元件上的时候变成手形状

//按钮样式改变
function buttonover(e) {

//移到按钮上时,放大按钮
var target = e.currentTarget;
createjs.Tween.get(target).to({
	scale: 1.2
}, 300);

}

function buttondown(e) {
//点击按钮时,播放点击音效,变换点击大小
createjs.Sound.play(“clickb”);//这个音效,是animate里面,导入的音效的链接名,不需要自定义ID名。
var target = e.currentTarget;
createjs.Tween.get(target).to({
scale: 0.8
}, 500).to({
scale: 1
}, 500);
}

function buttonout(e) {
//离开按钮时,恢复原始状态
var target = e.currentTarget;
createjs.Tween.get(target).to({
scale: 1
}, 300);
}

/---------------------end------------------------------/

跨域问题:
一般是指浏览器为了安全问题而做的设定,不允许点击图像,而是点击像素。
所以为了解决这个问题,可以在点击的元件上面画一个像素图形,这样就可以点击了。

一般的模板如下:

//点击域函数
function buffer(button) {

var data = button.getTransformedBounds(); //获取传入的元素button的属性。
var rect = new createjs.Shape(); //定义一个图形变量。

rect.graphics.beginFill("red").drawRect(-data.width / 2, -data.height / 2, data.width, data.height);
//绘制蓝色矩形,定义位置与传入元素的位置相同。

button.addChild(rect); //将绘制的图形添加到传入元素中。

rect.alpha = 0.01; //作为点击域,颜色透明度接近于0,避免遮挡。

button.hitArea = rect; //设置图形为点击域

} //函数结尾

调用点击域函数
var buttom = this.buttom;//先定义变量,获取舞台上的元件名
buffer(buttom);//再调用点击域函数,给该元件添加点击域

//画线,这是画线函数,可以套用的,输入起点坐标和终点坐标,就可以画一条直线。
function connection(x1, y1, x2, y2)  {
//x1,y1是初始位置,x2,y2是初始位置
  //创建一个新舞台
//var canvas = document.createElement(‘canvas’);      
var shape = new createjs.Shape();        
graphics = shape.graphics; //起点位置
       
graphics.beginStroke(“white”); //线的颜色
       
graphics.setStrokeStyle(5); //线的粗细
       
graphics.moveTo(x2, y2); //终点
       
graphics.lineTo(x1, y1); 
      
stage.addChild(shape); //将shape加入到舞台中
   
}

//随机数
var items1 = [1, 2, 3, 4]; //定义随机数的内容
var result = getRandomArrayElements(items1, 4); //随机获取定义的随机数内容
console.log(result);//输出以检测随机数是否获取正确

//随机函数(可用模板)
function getRandomArrayElements(arr, count) {
var shuffled = arr.slice(0),
i = arr.length,
min = i - count,
temp, index;
while (i-- > min) {
index = Math.floor((i + 1) * Math.random());
temp = shuffled[index];
shuffled[index] = shuffled[i];
shuffled[i] = temp;
}
return shuffled.slice(min);
}

定义数组:数组一般要初始化才能用。
var arr = new Array();//先定义变量为数组类型
var that = this;//给舞台定义一个别称
var n = 9;//给定任意一个整数。
for(var i=0;i<=n;i++)
{
arr[i] = that[“name”+i]//这个初始化数组适合数组形式的舞台元件名。类似于 a = this.name;

}

鼠标的监听事件:
addEventListener

用法如下:
buttom.addEventListener(“click”,function(){
//该元件的鼠标单击事件
//函数体,要执行的内容

});

//下列是帧事件
createjs.Ticker.setFPS(30); //每秒30帧
createjs.Ticker.addEventListener(“tick”, handleTick); //每帧执行事件
function handleTick(){

//每一帧的时候,需要执行的事件
//这是自定义的,只要写我们需要用到的功能即可,其他的网页会自己执行

}

//下列是播放音频的代码
//一般的,音频的id不需要我们自己去写,animate发布的时候,会自己写
new sound1 = new createjs.Sound.play(“sun_tips”);//创建一个音频变量,并用createjs.Sound.play()方法播放音频。引号的是音频的id,在animate中是连接名
sound1.on(“complete”, function () {
//这是sound1的播放完成的监听事件
//下列是sound1播放完后,需要执行的事件,可自由编写
new sound = createjs.Sound.play(“bg”, {
loop: -1
});

如果要停止播放音频,可以用puased属性,
即:sound.puased = true;//这是暂停
sound.puased = false;//这是继续播放

//这是一个数组元件的监听事件,元件以option数组命名
for (var i = 1; i <= 15; i++) {
option[i].p = i;//由于外面的i不能事实传递进入监听事件中,所以要用元件的一个属性p,将i传递进去。这里主要是想获取当前点击元件的下标
option[i].addEventListener(“click”, function (e) {
//function中添加了参数e,是为了能将外面的数据传入进来

	var j = e.currentTarget.p;//定义一个变量,通过额的currentTarget.p属性,将传入的值给j。
 

	}



});

}

//这是延迟函数,即延迟多久才执行,一般是毫秒为单位
setTimeout(function () {

		drow.gotoAndStop(0);//这是指某一个影片剪辑的动画,从开始执行到第几帧结束
		


	}, 3000);



    createjs.Tween.get("对象名").wait(300).to({属性名:值}).call(函数名);
   //createjs.Tween中,get是获取操作对象,wait是等待多长时间才执行,to 一般是修改属性,call一般是调用函数。
   具体操作可以上createjs中文网的Tween中查询。
  • 1
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值