键盘焦点被Flash窃取

键盘焦点被Flash窃取,flash,keyboard,focus,Flash,Keyboard,Focus,在执行搜索时,我注意到几个问题,这些问题专门涉及如何窃取/捕获访问者的键盘焦点。考虑到这个网站致力于编程,这并不令人惊讶。我想知道是否有人可以建议我如何防止这种行为。在我使用鼠标点击其他地方(我使用Mozilla Firefox)之前,将键盘焦点丢失到flash基本上会删除浏览器的功能。有人知道某种插件或greasemonkey脚本可以防止我的键盘焦点被盗吗?普通浏览器的“快捷键”由于必须使用鼠标将键盘焦点返回到浏览器而变得无用 编辑:回复下面的帖子,我有flashblock/noscript和

在执行搜索时,我注意到几个问题,这些问题专门涉及如何窃取/捕获访问者的键盘焦点。考虑到这个网站致力于编程,这并不令人惊讶。我想知道是否有人可以建议我如何防止这种行为。在我使用鼠标点击其他地方(我使用Mozilla Firefox)之前,将键盘焦点丢失到flash基本上会删除浏览器的功能。有人知道某种插件或greasemonkey脚本可以防止我的键盘焦点被盗吗?普通浏览器的“快捷键”由于必须使用鼠标将键盘焦点返回到浏览器而变得无用


编辑:回复下面的帖子,我有flashblock/noscript和其他一些东西。我的问题是flash,我想看到它/与它互动,窃取我的焦点。基本上,我正在寻找一些我可以切换的东西,以防止flash获得键盘焦点,或者寻找一种方法来强制我的firefox键盘命令进入浏览器,将Alt Tabbing切换到当前应用程序将返回焦点。

类似问题:

答案(不被接受,但看起来很有希望):

 document.body.focus();

我可以为你工作。这很容易被油腻化。可能吧。

首先,检查以确保您使用的是高于6.0版的flash播放器。另外,另一名应答者是正确的。FireFox不应该自动关注内嵌flash内容……它不是这样设计的

其次,这不仅仅是一个烦恼,这是一个可访问性问题。那些只能使用键盘或屏幕阅读器等辅助设备导航的用户将无法逃脱……因为他们不/不能使用鼠标

要避免在键盘导航中使用flash,或对web浏览器和屏幕阅读器隐藏不重要的flash内容,请在包含flash电影或swf的网页的对象和嵌入标记中添加值为不透明的wmode选项

代码示例:

<object ...>
<param name="wmode" value="opaque">
<embed wmode="opaque" ...>
</embed>
</object>

这将有效地对屏幕阅读器/辅助设备和键盘隐藏Flash电影。它仍然会出现在页面中,但在页面中导航时,键盘会绕过Flash内容,屏幕阅读器会表现得好像它不在页面中一样

但是!!!! 如果电影/swf确实包含重要信息,请在页面中单独显示Flash电影,或包含下载最新版本Flash player并通知用户需要使用此版本的链接。-当然,你应该让你的flash键盘可以导航


FLASH的衰落:本机键盘导航FLASH是唯一的--我重复一遍,只有在Internet Explorer中才可用…因为Adobe/Macromedia设计的“可访问FLASH”与MSAA(Microsoft Active Accessibility)技术配合使用,唯一支持MSAA技术的浏览器是Internet Explorer。

不幸的是,它已经有近十年的历史了(现在也出现在Chrome中),IE中没有这种功能。所有的Ctrl+T、Ctrl+Tab、Ctrl+W等键都会在焦点对准flash对象时停止工作

更糟糕的是,似乎还没有人知道它的修复方法(参见上面的线程)。一些IBM人员提出了一个新的解决方案,但没有一个适用于Windows。真的很烦人


[2013年3月更新:在google chrome版本“24.0.1312.52 m”和我假设的更高版本中,Ctrl+Tab键不会松开flash的焦点]

在使用Firefox 4的Mac OSX 10.6上,如果插件(flash)有焦点,并且使用Cmd+1或新选项卡的Cmd+T等时,您的选项卡无法工作

首先使用Cmd+L来指定浏览器地址栏的焦点,然后执行Cmd+1等操作。

似乎没有CTRL或ALT组合可以释放焦点。唯一有效的是操作系统的。它不能帮助您转到另一个窗口,焦点仍然保持不变,而且不,您不能更改选项卡、关闭它或使用键盘执行任何其他操作

我曾经有一段时间没有鼠标使用我的电脑,这是我遇到的第一个实际问题(除了缺少一些网站的拖放功能和无法访问的按钮状图标)。所以,若你们面临同样的困境,不想完全关闭Firefox,你们仍然可以使用ALT来关注应用程序的工具栏(至少在Windows中)。但是,没有关闭选项卡的选项,但您可以从历史记录中选择任何其他站点(例如,您的主页,它首先带有h字母),然后最后关闭选项卡

因此(至少在使用FF5的Windows中)例如,在英文版Firefox中,您可以键入: ALT+S+H
然后使用ALT返回← (或使用CTRL+W或CTRL+F4关闭选项卡)。

帮助!我也是!这让我很兴奋,因为我是一个键盘驱动型的人。OP并不是要编写什么程序,他们只是在寻找一个插件。这属于超级用户。请迁移到超级用户!在运行多个选项卡的浏览器中安装并按下
ctrl
+
f12
,当您返回浏览器时,这不会移动flash内容的焦点。我在Chrome和jQuery中遇到了一个可怕的问题,其中
这是页面的某些元素,如果视口滚动到:$(“”)。css({opacity:0})。appendTo(此).focus().remove();酷,这真的很有效!!!谢谢Henrik,这必须是正确的答案,而不是评论