updateAfterEvent的作用 |
| 作者:佚名 来源:lukeeBLOG 作者: lukee 更新:2007-1-13 20:36:38 错误报告 我要投稿 |
|
有很多人做鼠标追随效果的时候,总是发现鼠标移动不流畅,不知该如何解决。 其实方法很简单,你只需要加上一句updateAfterEvent()就ok了。
先来看看帮助中是怎么解释updateAfterEvent的: /*在 onClipEvent() 处理函数内调用此函数时,或将其作为传递给 setInterval() 的函数或方法的一部分进行调用时,将更新显示(与为影片设置的每秒帧数无关)。如果对 updateAfterEvent 的调用不在 onClipEvent() 处理函数内,也不是传递给 setInterval() 的函数或方法的一部分,则 Flash 将忽略该调用。此函数只对某些 Mouse 和 MovieClip 处理函数起作用:Mouse 类的 mouseDown、mouseUp、mouseMove、keyDown 和 keyUp 处理函数;MovieClip 类的 onMouseMove、onMouseDown、onMouseUp、onKeyDown 和 onKeyUp 处理函数。它对 Key 类不起作用。 */
其实说到底updateAfterEvent的作用就是使光标移动看起来更加顺畅。
下面是我做的一个对比的例子,目的让大家更方便的理解它的作用。 当鼠标移到舞台左面的“有执行updateAfterEvent”的区域时,鼠标移动将流畅,而当鼠标移动到舞台右面的“无执行updateAfterEvent”的区域时,鼠标移动较会有间断,不流畅。
Flash动画
看看as:
//使用 updateAfterEvent() 继续刷新舞台以使光标的移动看起来顺畅。 Mouse.hide(); //trace(this) mc.swapDepths(this.getNextHighestDepth()); mc.onMouseMove = function() { if(this.hitTest(you)){ this._x = this._parent._xmouse; this._y = this._parent._ymouse; updateAfterEvent(); } if(this.hitTest(wu)){ this._x = this._parent._xmouse; this._y = this._parent._ymouse; } }
最后附上源代码
|
|
| 文章录入:skyuu 责任编辑:skyuu |
|
| 【字体:小 大】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 |