0

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

场景是一系列嵌套的 mx:Canvas(我被迫使用 MX 而不是 Spark)。其中一个嵌套的画布具有 mouseWheel="..." 事件分配。

现在来解决问题:在 Firefox 上,wmode=window(Chrome 工作正常),由于未知原因,MouseEvent 被连续触发,直到光标移出处理滚轮事件的 Canvas。

什么已经尝试过:

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

似乎没有任何效果。

想法?

UPD:似乎仅在元素至少调整一次大小后才会发生。

4

1 回答 1

0

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

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

似乎正在“重置”车轮事件。

于 2013-01-21T08:59:37.853 回答