Flex 는 IFrame 구성 요소 에서 JS 와 as 의 상호 호출
1786 단어 기술 소감 공유
import flash.external.ExternalInterface;
External Interface 를 도입 하면 해결 할 수 있 습 니 다.
자세 한 내용 은:http://blog.csdn.net/qq1113130712/article/details/41007009
IFrame 을 끼 워 넣 은 상태 에서 끼 워 넣 은 페이지 를 JS 상호 조정 하 는 것 은 정상 적 인 끼 워 넣 는 것 과 약간 다 릅 니 다.
삽입 코드:
// IFrame
Iframe as to js:
Flex:
//
TestCallJs.callIFrameFunction("TestMsgSend", null, JsCallFinish);
JavaScript:funtion TestMsgSend() { return "as to Js Call" }
Js 함수 가 실 행 된 후에 Flex 의 JsCallFinish 함 수 를 촉발 합 니 다. JsCallFinish 의 매개 변 수 는 JS 함수 의 반환 값 입 니 다. to Js Call”)。
IFrame js to as:
IFrame 프레임 아래 페이지 의 JS 리 셋 Flex 페이지 의 as 함수 로 자료 가 적 습 니 다.
IFrame 에 포 함 된 페이지 를 살 펴 보면 IFrame 이 포 함 된 후 Flex 에 포 함 된 것 이 아니 라 div 포 함 된 Frame 프레임 워 크 를 페이지 에 덮어 IFrame 의 위치 에 배치 한 것 을 알 수 있 습 니 다.따라서 IFrame 내장 페이지 의 JS 가 Flex 의 as 를 호출 하 는 것 은 웹 프레임 프레임 워 크 의 JS 가 홈 페이지 를 호출 하 는 것 으로 볼 수 있다.
Flex// public function downloadShareFile(FileName:String):void { //Alert.show(FileName); } // ExternalInterface.addCallback("downloadFile", downloadShareFile);
JavaScriptfunction callas() { var ascall = 'test call'; parent.window.document.getElementById("TestCallJs").downloadFile(ascall); }