鼠标滚轮事件持续触发,不会在Firefox上停止

时间:2013-01-18 13:31:21

标签: actionscript-3 flex flex4 mouseevent

基本上我正在尝试在Flex 4.5中实现鼠标滚轮的简单放大/缩小。

场景是一系列嵌套的mx:Canvas(我不得不使用MX而不是Spark)。其中一个嵌套画布有一个mouseWheel =“...”事件赋值。

现在问题出现了:在Firefox上,wmode = window(Chrome工作正常),由于原因未知,MouseEvent会不断触发,直到光标移出Canvas处理wheel事件。

尝试了什么:

  • wmode transparent;
  • event.stopPropagation();
  • event.stopImmediatePropagation();
  • event.preventDefault();
  • 在层次结构中移动事件处理更高/更低;
  • 删除处理程序中的侦听器并在超时时重新分配;
  • 以上的各种组合;

似乎没什么用。

想法?

UPD:似乎只有在元素调整至少一次后才会发生。

1 个答案:

答案 0 :(得分:0)

由于似乎没有合理的(或逻辑的)解决方案,因此有一个丑陋的解决方法:

  • 在车轮处理程序中,添加handlerObject.mouseEnabled = false;
  • 设置超时时间为1-10毫秒,将mouseEnabled重置为true

似乎是“重置”车轮事件。