- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我只是将这个 super 简单的代码示例放入 Flash CS4 IDE 框架脚本中,但它没有在控制台中输出任何内容。我只是将鼠标悬停在窗口上,没有点击任何东西,什么也没有发生。为什么这不像我预期的那样工作?
stage.addEventListener(Event.MOUSE_LEAVE, traceMouse);
function traceMouse(Evt:Event):void
{
trace("Mouse Left Stage");
}
______________________________________________________
[编辑] 我发现 Event.MOUSE_LEAVE 毫无用处。首先,它在测试环境中不起作用(至少在 Mac OS X 的 Flash CS4 上)。其次,如果 MouseEvent.MOUSE_DOWN 当前处于事件状态,它不会触发:
Flash CS4 Professional ActionScript 3.0 语言引用:
Updated 8/11/09: Added qualification that event is not fired when button is pressed.1
在我的特定情况下,我希望在拖动对象时触发 MOUSE_LEAVE,以便在用户将他/她的鼠标指针拖离舞台时触发 stopDrag()。因为那是不可能的,所以我决定在实际对象上使用 MOUSE_OUT 而不是在对象的父级或舞台上使用 MOUSE_LEAVE。
private function mouseDownHandler(evt:MouseEvent):void
{
object.addEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);
object.startDrag(false, pullBounds);
}
private function mouseUpHandler(evt:MouseEvent):void
{
object.removeEventListener(MouseEvent.MOUSE_OUT, mouseOutHandler);
object.stopDrag();
}
private function mouseOutHandler(evt:MouseEvent):void
{
object.stopDrag();
}
最佳答案
这里有一些额外的棘手的事情要知道(在浏览器中运行时):
一件奇怪的事情是,在 Chrome + Firefox 中,MOUSE_LEAVE 事件没有为 WMODE 发送。 OPAQUE
或TRANSPARENT
。它只是不触发 - 鼠标向下或向上。
使用 WINDOW
它工作正常。那个花了我很长时间才发现!呃... http://bugs.adobe.com/jira/browse/FP-892
其次,确保您使用 Event
作为您的 Event.MOUSE_LEAVE
处理程序的参数类型,而不是 MouseEvent
。如果您尝试使用 e:MouseEvent
处理 MOUSE_LEAVE
,您将收到一个您可能永远不会看到的错误(除非您使用调试 flash 播放器)。这是一个很容易犯的错误,因为您可能将所有其他处理程序指向同一个方法。
这是我所做的:(只需从 mouseLeave(e:Event)
endDrag
stage.addEventListener(MouseEvent.MOUSE_MOVE, drag);
stage.addEventListener(MouseEvent.MOUSE_UP, endDrag);
stage.addEventListener(Event.DEACTIVATE, endDrag);
stage.addEventListener(Event.MOUSE_LEAVE, mouseLeave);
private function mouseLeave(e:Event):void
{
endDrag(new MouseEvent("MOUSE_LEAVE"));
}
public function endDrag(evt:MouseEvent):void
{
/// handle end drag
}
关于actionscript-3 - Event.MOUSE_LEAVE 在 AS3 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2595995/
我只是将这个 super 简单的代码示例放入 Flash CS4 IDE 框架脚本中,但它没有在控制台中输出任何内容。我只是将鼠标悬停在窗口上,没有点击任何东西,什么也没有发生。为什么这不像我预期的那
我刚刚接触 WPF。我有两个事件处理程序: private void Mouse_Enter(object sender, MouseEventArgs e) { ((Button)sende
我是一名优秀的程序员,十分优秀!