这一次让我感到厌烦。当我使用鼠标滚轮在网页中向上和向下滚动,并且闪光电影进入光标的路径时,滚轮停止工作。此外,当Flash影片具有焦点时,您无法使用浏览器快捷键,例如 Ctrl + L 或 Ctrl + R
我现在正在编写一个flex应用程序,我想找到一个解决方案,这样至少我的用户不会受到这种用户界面行为不一致的困扰。
我认为有一种方法可以告诉flash将鼠标滚轮和键盘输入等事件传播回浏览器,除非它们出现在它们有用的元素中,例如在flex textarea中。我找不到任何解决方案,甚至没有人在谈论它。
具体来说,我该如何做到:
答案 0 :(得分:3)
浏览器和闪存之间的通信是通过ExternalInterface完成的。 ExternalInterface允许您从JavaScript调用ActionScript方法,反之亦然。
祝你好运,因为经验表明处理键盘快捷键和浏览器不稳定往往很痛苦
答案 1 :(得分:3)
我遇到了同样的问题。但是,如果你已经在flex中构建了一个复杂的UI,那么我选择的解决方案需要进行大量的更改。
使用HTML创建用户界面,并通过javascript与隐藏的flex(或flash)对象进行通信。
例如,将要在flex textarea中显示的任何字符串作为ExternalInterface调用中的参数传递。然后在常规<textarea>
html标记中显示该字符串。
此策略适用于我的项目
答案 2 :(得分:0)
添加一个事件,当你在闪光灯内部时,如果你在闪光灯里面就会处理这个事件。外部界面禁用滚动并获得专注于闪光灯。
当你走出闪光灯时,你仍然可以触发事件,仍然可以调用外部界面来聚焦浏览器并停止闪光滚动。