所有浏览器上的flash键盘焦点

Keyboard focus for flash on all browsers

本文关键字:flash 键盘 焦点 浏览器      更新时间:2023-09-26

如何在其他浏览器(而不是IE)上为swf设置键盘焦点的代码。

我知道IE只是

document.getElementById('movieID').focus();

其他浏览器会怎样?

本机支持焦点的HTML元素只有链接(<a>)和表单元素,如<input>。要使HTML元素能够通过javascript进行聚焦,需要设置元素的tabIndex

(Jonathan Snook几年前写了一篇很好的简单概述。Mozilla提供了一个很好的主题概述,W3C讨论了与ARIA相关的键盘焦点。)

一旦嵌入了Flash SWF,您就可以像这样关注新的<object>元素:

var flashvars = {};
var params = {};
var attributes = {};
var callbackFn = function(e){
   if(e.success){
      e.ref.tabIndex = "-1";
      e.ref.focus();
   }
};
swfobject.embedSWF("myfile.swf", "myflashelement", "550", "400", "9.0.0", "expressInstall.swf", flashvars, params, attributes, callbackFn);

如果您想了解更多信息,将在这个SWFObject支持线程中深入讨论键盘焦点。