好了朋友,場景十分複雜:從AIR應用程序嵌入式柔性web應用焦點設置爲textInput
我有一個AIR應用程序和它裏面我有運行的靈活網絡應用程序,我的HTML組件需要在兩個時刻專注於文本輸入。 HTML組件位於面板內部,並且位於堆棧視圖內
1.-當我選擇HTML組件所在的stackview索引時,Panel將分派完整的事件。 嗯,我通過修改HTML包裝爲柔性的Web應用程序添加一個類似
<script languaje="javascript" type="text/javascript">
function setInitialFocus() {
document.getElementById('${application}').tabIndex = 0;
document.getElementById('${application}').focus();
}
</script>
<body scroll="no" onload="setInitialFocus()">
一些代碼解決這個2:錯誤的事情是下一個: 當我選擇從stackview另一個指標則面板,其中HTML居住發送隱藏事件。如果我回到HTML所在的索引,那麼包含HTML的Panel將發送show事件。在show event處理程序中,我通過使用localConnection將命令發送到web應用程序,通過調用加載頁面時工作正常的相同javascript函數(onload =「setInitialFocus()」)將焦點恢復到textInput組件。
Inside air app: protected creationComplete_Handler(event:Event):void { localConnection = new LocalConnection(); localConnection.addEventListener(StatusEvent.STATUS,localConnection_onStatus); localConnection.connect(「some.domain.com」); }
protected function show(event:FlexEvent) : void {
localConnection.send("_someConnection","executeJavaScript");
}
內部網絡應用: 公共creationComplete_handler(事件:事件):無效{ 的LocalConnection.allowInsecureDomain( 「應用#chevronLocstattDesktop」); localConnection.client = this; localConnection.connect(「_ SomeConnection」); }
public function executeJavaScript() : void {
ExternalInterface.call("setInitialFocus");
textInput.setFocus();
}
的JavaScript函數就是執行好(因爲我往其中加一些警報和它顯示),但沒有重點是考慮到Web應用程序,因此沒有焦點就轉移爲textInput這是所有目標這個。
請幫我...