모든 ActionScript 3 기반 런타임 (SWF10, SWF11, ...)에서 다음 코드는 F5 키를 눌러 OpenLaszlo 앱을 다시로드 할 수있게합니다.
<canvas>
<passthrough when="$as3">
import flash.events.Event;
</passthrough>
<handler name="oninit">
if ($as3) {
var sprite = this.getDisplayObject();
sprite.addEventListener(Event.ACTIVATE, onactivate)
sprite.addEventListener(Event.DEACTIVATE, ondeactivate);
}
</handler>
<method name="onactivate" args="e=null">
Debug.info('OpenLaszlo app is active, press F5 to reload');
</method>
<method name="ondeactivate" args="e=null">
Debug.info('OpenLaszlo SWF is inactive');
</method>
<switch><when property="$debug">
<!-- Reload SWF app when F5 is pressed -->
<command key="['f5']"
onselect="lz.Browser.callJS('document.location.reload(true)')"
active="$once{$as3}" />
</when></switch>
</canvas>
첫째, 플래시 동영상에 대한 Event.ACTIVATE
및 Event.DEACTIVATE
이벤트를 추적하고 있습니다. Event.ACTIVATE
이벤트는 Flash 무비가 포커스를받을 때 전송됩니다. F5 키를 눌러 다시로드를 활성화하려면 <command />
태그가 추가됩니다. 단, $ debug가 응용 프로그램에 대해 활성화되어 있어야합니다.
<switch><when property="$debug">
<!-- Reload SWF app when F5 is pressed -->
<command key="['f5']"
onselect="lz.Browser.callJS('document.location.reload(true)')"
active="$once{$as3}" />
</when></switch>
onSelect를 핸들러는 lz.Browser
오브젝트 사용하여 현재 페이지를 새로 고침 트리거한다. key 명령은 ActionScript 3 런타임에만 활성화됩니다. 이제 SWF 런타임에서 응용 프로그램을 테스트하거나 개발할 때 F5를 눌러 DHTML 런타임에서와 마찬가지로 다시로드하면됩니다.
멋진 소식입니다. 게시 해 주셔서 감사합니다. –