Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/actionscript-3/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Actionscript 3 加载页面时聚焦Firefox中的嵌入式SWF_Actionscript 3_Apache Flex_Firefox_Focus - Fatal编程技术网

Actionscript 3 加载页面时聚焦Firefox中的嵌入式SWF

Actionscript 3 加载页面时聚焦Firefox中的嵌入式SWF,actionscript-3,apache-flex,firefox,focus,Actionscript 3,Apache Flex,Firefox,Focus,我目前正在开发的Flex应用程序在启动应用程序时需要关注TextInput控件,但正如我在实现此功能时注意到的,调用TextInput.focus()将关注输入,但不会关注嵌入的SWF本身,因此用户无法在应用程序启动后立即键入输入,必须在启动之前单击SWF上的某个位置。我通过使用一些JS自动将焦点设置到SWF(使用ChromeV27和IE10进行测试和工作),部分解决了这个问题。可惜它在Firefox(v22)上不起作用。为什么呢?以下是我在index.html模板中的代码: function

我目前正在开发的Flex应用程序在启动应用程序时需要关注TextInput控件,但正如我在实现此功能时注意到的,调用TextInput.focus()将关注输入,但不会关注嵌入的SWF本身,因此用户无法在应用程序启动后立即键入输入,必须在启动之前单击SWF上的某个位置。我通过使用一些JS自动将焦点设置到SWF(使用ChromeV27和IE10进行测试和工作),部分解决了这个问题。可惜它在Firefox(v22)上不起作用。为什么呢?以下是我在index.html模板中的代码:

function focusFlash() 
{ 
    var f = document.getElementById('${application}');

    if(f) 
    {
       f.tabIndex = 0;
       f.focus();
    }
}

我将此函数用作swfobject.embedSWF()回调。

这是来自Adobe论坛的,可能值得一试

将以下行添加到swf

导入flash.external.ExternalInterface; 调用(“s=function(){document.getElementById('mymovie').focus();}”)


其中“mymovie”是html脚本中嵌入的swf对象的ID。

我以前在这里看到过这个问题,但似乎找不到它。不管怎样:你提供的代码和我的相同,唯一的区别是它是从应用程序本身调用的。它真的对FF有效吗?另外,纯JS解决方案更适合我。我只是运行您的代码,仍然没有关注FF v22。这与我现在所做的类似,只是没有设置tabIndex,它只在IE中工作。