我无法解雇或捕获事件发生的结果。
这是当前的代码......
<s:Panel id="instructionsPanel" left="0" right="0" top="0" bottom="0" title="Register">
<mx:HTML id="htmlViewer" left="10" right="10" top="0" bottom="10"
location="http://ramzsoft.com/software-optins/easyspinner.html"/>
<s:TextInput id="urlOutput" x="10" y="285" width="628" text="Not a test"/>
</s:Panel>
import flash.events.Event;
import flash.filesystem.File;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import mx.controls.Alert;
import mx.managers.PopUpManager;
import org.osmf.utils.URL;
private var file:File = new File();
private const FIRST_RUN_TOKEN_FILE:File =
File.applicationStorageDirectory.resolvePath("firstrun");
init();
private function init():void {
htmlViewer.addEventListener(Event.LOCATION_CHANGE, onClosePanel);
}
private function onClosePanel(e:Event) {
urlOutput.text = "test";
instructionsPanel.visible = false;
}
用户在HTML查看器中填写表单,然后当他们点击提交按钮时,我希望收到有关页面更改的通知。
如果他们落在URL A上,那么他们将会看到一条消息。如果他们落在URL B上,他们将被显示为另一个。
然而,该事件未被解雇。
我也尝试过COMPLETE和HTML_DOM_INITIALIZE。
关于为什么这样做不正常的任何想法?
答案 0 :(得分:1)
我不确定是否使用init();在不知名的地方有任何影响。无论如何,你不需要那个init,你可以通过MXML直接设置它。顺便说一句,我认为只有在点击链接(或重定向)时手动设置HTML组件的位置时才会调度位置更改。
<s:Panel id="instructionsPanel" left="0" right="0" top="0" bottom="0" title="Register">
<mx:HTML id="htmlViewer" left="10" right="10" top="0" bottom="10"
location="http://ramzsoft.com/software-optins/easyspinner.html"
locationChange="onClosePanel(event)"/>
<s:TextInput id="urlOutput" x="10" y="285" width="628" text="Not a test"/>
</s:Panel>