偷天换日改指针

建站指南

在Flash web中,我们可以“修改”访问者鼠标指针的样式,使其与网页风格更为吻合。同时,我们还可以模仿操作系统:设置其悬停、加载等情况时不同的样式。往往是这些不起眼的部分却可以构成一个完美无缺的动态网页。

修改指针

要“修改”访问者鼠标指针,必须先将原有的指针隐藏起来,当然这只作用于影片范围内,超出此区域后,鼠标指针又会出现。要使鼠标指针设置为不可见其实很简单,只需用到“Mouse.hide()”。与其相反的代码为“Mouse.show()”,当我们需要使原来的鼠标指针重现时即可使用它。原有的指针被隐藏之后,我们就可以绘制或导入自己的鼠标指针,并用它来代替原来的指针。

要使我们自己绘制的指针剪辑跟随隐藏的指针一起运动,我们自然而然地想到用“startDrag();”来实现。但经过测试后我们会发现,当鼠标较快运行时,指针拖影、闪烁现象相当明显。其实我们只需调用高帧频迅速更新数据,自制指针就能跟随鼠标一起移动了。

新建一个Flash文档,大小为880×880,背景颜色为黑色。在舞台上绘制一个指针,选中并按F8转换为影片剪辑,并更名为“zhizhen”,选中影片剪辑并在动作面版中输入:

onClipEvent (enterFrame) {Mouse.hide()} //剪辑播放时隐藏鼠标指针

这样,原来的指针就被隐藏起来了,之后在主时间轴第一帧中加入代码,使自制的指针随隐藏的指针移动。

startDrag(zhizhen,true); //剪辑指针开始拖动

为实现后面的悬停效果,我们在zhizhen剪辑第一帧加入代码:stop();

在属性面板将帧频改为30,按下“Ctrl+Enter”测试影片可看到预期效果。

改变效果

下面我们来实现悬停效果。在舞台中绘制一个立方体(为避免挡住指针,需将它置于下一层),将绘制好的立方体转换为元件并命名为“cube”,在动作面板中输入:

on (rollOver) {_root.zi.gotoAndPlay(2);_root.zhizhen.gotoAndPlay(2)} //鼠标划过

剪辑“zi”转到第二帧播放(“zi”如图中右边文字部分,制作较简单,大家可以自行完成。但要注意在第一帧留空,并加入代码“stop()”,在最后一帧同样使其停止播放)。剪辑“zhizhen”跳转到第二帧播放。

on (rollOut) {_root.zi.gotoAndStop(1);_root.zhizhen.gotoAndPlay(1)} //鼠标划出,剪辑恢复原样。

之后,我们绘制指针悬停时的样式。在“zhizhen”的第二帧新建一个空白关键帧,在其中绘制悬停时的指针样式,注意使其对准影片中心。然后在这一帧输入代码:

this._x=_root._xmouse

this._y=_root._ymouse

在第三帧新建一个空白关键帧并加入代码gotoAndPlay(2),这样,指针的悬停效果也制作完毕了。

整个过程并不复杂,道理也十分简单。但我们要注意其中思考实现效果的过程。在想出如何实现后,还要实测一下效果是否令人满意。总之,网页的动画效果是我们Flash Web的指挥棒,我们都要对它首先予以考虑。