Отвечая на мой собственный вопрос здесь. «Целый сильный удар по JavaScript» можно суммировать в одной нелепой линии:
var myWindow = air.NativeApplication.nativeApplication.openedWindows[intWindowCount].stage.getChildAt(0).window
myWindow.document.getElementById('status').innerHTML = "success";
Это предполагает, что вы используете NativeWindow и загрузки HTML в использовании HTMLLoader, и вы только загрузку одного ребенка. intWindowCount
представляет количество открытых окон (включая Introspector). 0
представляет число детей, которые вы создали с помощью метода stage.addChild()
. Код, который я использую, приведен ниже целиком. Существует вероятность некоторые очистки, чтобы сделать, но это должно быть хорошей отправной точкой для тех, кто должен делать то же самое:
var htmlView = new air.HTMLLoader();
htmlView.width = 300;
htmlView.height = 500;
var objWindowOptions = new air.NativeWindowInitOptions();
objWindowOptions.transparent = false;
objWindowOptions.systemChrome = air.NativeWindowSystemChrome.STANDARD;
objWindowOptions.type= air.NativeWindowType.NORMAL;
var wWindow = new air.NativeWindow(objWindowOptions);
wWindow.x = objScreen.x;
wWindow.y = objScreen.y;
wWindow.width = objScreen.width;
wWindow.height = objScreen.height;
wWindow.activate();
wWindow.stage.align = "TL";
wWindow.stage.displayState = runtime.flash.display.StageDisplayState.FULL_SCREEN_INTERACTIVE;
wWindow.stage.scaleMode = "noScale";
wWindow.stage.addChild(htmlView);
htmlView.load(new air.URLRequest("pageTwo.html"));
setTimeout(function(){
objScreen.setWindowReference(air.NativeApplication.nativeApplication.openedWindows[intWindowCount].stage.getChildAt(0).window);
objScreen.setClock(cClock);
cClock.screen = objScreen;
},500);
Тайм-аут в конце концов, это ужасно, стыдно хак. Я использую его только потому, что я еще не нашел подходящее событие для использования с addEventListener()
.