【发布时间】:2009-03-25 17:56:55
【问题描述】:
我无法在 IE 中使用 AS3 检测到 swf 上的键盘事件 CtrlV。它似乎触发了默认浏览器行为,而我无能为力...有什么解决方法吗?
【问题讨论】:
-
我在使用 IE 和所有控制键组合时遇到了同样的问题,尽管相同的代码在 FF 中运行良好。发生的情况是 IE 吞下了修改后的键的按下事件,所以我只得到: [KeyboardEvent type="keyDown" ... charCode=0 keyCode=17 ... ctrlKey=true ...] [KeyboardEvent type="keyUp" ... charCode=99 keyCode=67 ... ctrlKey=true ...] [KeyboardEvent type="keyUp" ... charCode=0 keyCode=17 ...ctrlKey=false ...] 添加 evilpenguin 的代码没有' t 改变行为。 (我打算稍后添加一些条件以将 preventDefault() 限制为某些键。)
-
我们的内部测试在装有 Firefox 和 Safari 的 Mac 上发现了同样的错误。
-
好的。我发现了几种奇怪的行为。 1) 按下控制键时按下的键永远不会发生键按下事件。 2)如果按住控制键并反复按下其他键而不释放控制键,最终不会发生进一步的按键事件。 3)当你停止接收按键事件后,当你最终释放它时,你将永远不会看到控制按键事件(或任何其他按键事件)。
-
我在这里写了一个示例代码:stackoverflow.com/questions/11915620/…
标签: flash actionscript detect ctrl