您当前的位置:首页 > 计算机 > 软件应用 > 行业软件

Hype 4时间线操作(五) —编写JavaScript函数

时间:02-01来源:作者:点击数:

相信很多小伙伴都玩过大富翁游戏中,当阿土仔经过某块地的时候,会停下来购买土地或建栋房子,然后接着往前走。这样的运动能否使用Hype 4进行制作呢?答案是可以的,而且非常简单。

接下来,小编教导小伙伴如何制作一个简单的动画来模拟阿土仔的运动行为。动画的情节是这样的:矩形对象在运行经过触发点的时候,有一个弹窗跳出,告知矩形对象的背景颜色将被改变。关闭弹窗后,矩形对象背景颜色改变,并继续运行到终点。动画效果请参考图1。

动画效果
图1:动画效果

一、创建矩形对象运动

矩形对象从左到右水平运动,持续时间为2s。制作过程比较简单,步骤就不详述了,操作过程小伙伴可以参考图2。

创建矩形对象运动
图2:创建矩形对象运动

二、给矩形对象设置id名

选择矩形对象,打开“身份检查器”,在“唯一的元素ID”中输入obj1,给矩形的id命名为obj1。这个id名非常重要,在JavaScript函数里通过它获取到矩形对象后,才能对矩形对象进行操作。

设置矩形id名
图3:设置矩形id名

三、添加触发关键帧并创建JavaScript函数

创建JavaScript函数非常简单,具体操作小伙伴可以参考图4。

创建JavaScript函数
图4:创建JavaScript函数

四、编写函数程序

1、获取矩形对象

不同于网页中使用JavaScript,Hype 4获取矩形对象是在hypeDocument中,因此直接使用API函数hypeDocument.getElementById(‘obj1’)就可以获取到矩形对象。需要注意的是,小括号里单引号包着的“obj1”是刚才设置的矩形的id名称;等号左边的obj是指矩形对象。const是对常数变量进行赋值的命令。

获取矩形对象
图5:获取矩形对象

2、改变矩形背景颜色

矩形对象的背景颜色具体说就是“矩形的样式的背景颜色”,翻译成JavaScript语言为“obj.style.backgroundColor”,小句点表示“的”。用等号代表赋值,就是把等号右边代表某个颜色的代码赋值给矩形的背景颜色,实现改变矩形的背景颜色。

设置矩形背景颜色
图6:设置矩形背景颜色

3、alert弹窗

alert是弹窗命令,单引号里的文字是弹窗显示的内容。弹窗出现时会暂停矩形运动,关闭弹窗后,矩形会继续运动。具体效果如图7。

设置弹窗后的运动效果
图7:设置弹窗后的运动效果

4、暂停和继续矩形运动

从图7的运动效果来看,当关闭弹窗后,矩形改变背景颜色并瞬间运动终点,没有显示运动的过程,不是预想的效果。造成的原因是:弹窗出现后,表面看矩形是停止了运动,但时间指示器还是继续往前运动的。

因此在弹窗出现前需要先暂停矩形运动,在弹窗关闭后继续矩形运动。

在API函数列表中,hypeDocument.pauseTimelineNamed(timelineName)是暂停指定时间线运动,hypeDocument.continueTimelineNamed(timelineName, direction, canRestartTimeline)是继续暂停的时间线运动。

  1. (1)timelineName是时间线名称,如果在JavaScript中使用,最好不要用中文。这里是主时间线,所以名称为“Main Timeline”,使用时需要用单引号包住。
  2. (2)direction是运动的方向,由于方向没有发生变化,这个参数hypeDocument.kDirectionForward不用改。
  3. (3)canRestartTimeline的值为true或者false。如果对象已经运动到终点,则为true;如果没有到终点,需要继续运动,则为false。函数默认为false。

回到当前的函数,在alert命令前插入暂停时间线函数hypeDocument.pauseTimelineNamed(‘Main Timeline'),在alert命令后插入继续时间线函数hypeDocument.continueTimelineNamed(‘Main Timeline', hypeDocument.kDirectionForward, false),就可以实现预想的运动效果了。

插入暂停和继续时间线API函数
图8:插入暂停和继续时间线API函数

五、总结

Hype 4的API函数库非常强大,它是专门为Hype制作动画而设计的,如果用原生JavaScript语言来实现的话,将非常复杂。通过使用Hype 4的API函数,几行命令就使设计的动画实现了预想的效果。

最后,小编提醒小伙伴,记得更改JavaScript的函数名称。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门