好的我已经嵌入了这个100%宽度/高度的Flash,当用户移动鼠标时,我想显示一个面板,如果鼠标没有移动,它会在x秒后消失。
我想我需要一个addEventListener,但我不确定MOUSE_MOVE是否正确。 当鼠标停止移动时,我需要开始x秒来隐藏面板,所以我想用计时器?
我有这个票价:
stop();
panel_mc.visible = false;
var myTimer:Timer = new Timer(3000, 1);
myTimer.addEventListener(TimerEvent.TIMER_COMPLETE, timerHandler);
function showPanel(e:Event):void {
panel_mc.visible = true;
myTimer.start();
}
function timerHandler(e:TimerEvent):void {
panel_mc.visible = false;
}
stage.addEventListener(MouseEvent.MOUSE_MOVE, showPanel);
它有效,但是当我移动鼠标超过3秒钟时,我在面板上有一个小闪光灯(隐藏 - 显示)
任何更正或更好的方式都会受到赞赏,欢呼声
编辑我通过在开始之前添加重置来消除这个故障:
myTimer.reset();
myTimer.start();
答案 0 :(得分:0)
不,鼠标移动对我来说无济于事......
您应该每3秒检查一次计时器并检查鼠标位置,如果位置没有改变,请显示它。
或者尝试每100秒检查一次,并始终保存上一个位置和上次更改的位置。