2010-02-23 4 views
0

로드하는 데 몇 분이 걸릴 수있는 복잡한 쿼리를 기반으로 차트를로드하는 플래시 요소가 페이지에 있습니다. 이 코드를 사용하여 쿼리를 호출합니다.URLLoader가 모든 브라우저 이벤트에 대한로드를 취소합니다.

var chartData:URLLoader = new URLLoader(); 
chartData.addEventListener(Event.COMPLETE, onLoaded); 
chartData.addEventListener("httpStatus", onHttpStatus); 
chartData.load(new URLRequest(chartURL)); 

전체 이벤트 또는 서버 오류 이벤트를 수신합니다.

내 문제는 플래시가 URL을로드하는 동안 다른 페이지로 이동하려고 할 때 문제가됩니다. 브라우저가 사용자의 요청을 수락하기 전에 URL이 완전히로드 될 때까지 기다리는 것입니다. 내가 말했듯이이 차트는로드하는 데 최대 1 분이 걸릴 수 있으며 사용자가 페이지를 변경하려고 할 때까지 기다리는 것은 짜증나게합니다.

여기 내 질문 : 브라우저에서 이벤트를 듣고 있습니까 (다른 링크를 클릭하고 브라우저의 "뒤로"버튼 클릭)? 이 일을 잘못했다면 주저하지 말고 플래시로 프로그래밍하는 데 익숙하지 않습니다.

감사합니다.

답변

0

나는 당신이 무엇을 설명하는지 이해한다고 생각합니다. 어떤 것들은 당신이 시도 할 수 있습니다 :

파일 업로드 HTTP 서버

파일이 매우 큰 경우, Nginx와 같은 다른 HTTP 서버를로드 할 수 있습니다. Nginx Upload Module을 확인하십시오 (나는 아파치가 똑같은 것을 확신합니다). 기본적으로 사용자가 전혀 영향을받지 않고 파일을 업로드 할 수 있습니다.

이 문제는 상당히 복잡하고 파일 업로드가 언제 완료되는지 알 수 없습니다. 하지만 그들은 Upload Progress Bars with Nginx using Javascript을 어떻게 보여줄지 예를 보여 주므로 그렇게 할 수 있으며 완료시 (자바 스크립트에서) Event.COMPLETE 핸들러와 같은 것을 호출하는 메시지를 보냅니다.

브라우저 이벤트

다운로드가 (이 사용자를 성가 시게 수 있으므로 권장하지 않음)이 완료 될 때까지 페이지를 떠나는 사용자를 방지하기 위해 자바 스크립트와 가로 챌 브라우저 이벤트가 있습니다

  • 의 OnExit
  • (그들은 다른 곳에서 클릭)
  • 에 onblur
,617으로 onClose

이 예를 확인하십시오 : Javascript onclose: Warn the User. 도움이

희망, 랜스 사실

+0

는, 내가 뭔가에 사용자가 클릭이 ...하지만 브라우저 이벤트와 힌트는 자바 스크립트 캡처하는 것이 될 수 있다고 생각하면 플래시가 로딩을 중지 반대 할 것 이 정보를 내 플래시 파일로 보내는 좋은 해결책입니다. 고마워, 내가 이걸 시험해 볼거야. – Remiz

관련 문제