`

设置flex应用程序加载完毕后自动获取到输入焦点

    博客分类:
  • flex
 
阅读更多

应用场合:flex应用程序的登陆页面输入框,希望在加载完swf文件之后自动获取到输入焦点。

当然,这样的用户体验会好一些啦!

2种实现方案:

(1)只需要在flex应用程序中设置即可。

在flex应用程序的createComplete方法中设置如下:

// 首先要让swf文件获取到焦点

ExternalInterface.call("new Function('document.getElementById(\"xxx\").focus()')"); 

// 再设置flex中的具体组件获取焦点

userNameInput.setFocus();

说明:

xxx是指加载的swf文件名称,如我的应用是test.swf,即:

ExternalInterface.call("new Function('document.getElementById(\"test\").focus()')"); 


#个人推荐使用这种方式,因为这种方式只需要在flex中设置即可,不需要修改其他地方,对于代码的维护性来说好一些。


(2)在加载swf文件的html页面中作设置:

xxx.html是加载swf文件的页面,在onload()方法中设置:document.getElementById("xxx").focus();

当然,这种设置同样需要在flex应用的createComplete方法中设置具体组件的setFocus()方法获取焦点。


#相比起方法(1),方法(2)需要在2个地方进行修改,这样不便于代码的维护,所以不推荐。

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics