2009-05-12 3 views
1

내 html 문서에 포함 된 flex 응용 프로그램에서 활성화 할 때 ExternalInterface 호출을 사용하고 있습니다. 이 호출은 파이어 폭스가 문서 본문 100 % 집중하지 않는다는 점을 제외this.focus()가 Firefox에서 제대로 작동하지 않습니다.

function documentFocus() { 
    this.focus(); 
} 

모든 것이 마법처럼 작동하지 자바 스크립트 함수로 이동합니다. onkeyup 이벤트 수신을 중지합니다 (여전히 onkeydown을 등록합니다).

매우 이상한 행동입니다. 누군가 일어나고있는 단서가 있습니까?

여기를보십시오 : HTTP // www.willemdemmers.com/dplxr/

단계 재현하기 : 시도의 화살표 버튼을 정상적인 동작을 참조 (이미지를 keyDown에 빨간 불이 화살표와를 keyDown에 빛을 중지)하는 창 아래쪽에있는 플래시를 클릭하여 문서 본문에서 포커스를 제거하고 함수 호출을 호출합니다. 화살표 버튼을 다시 시도하고 새로운 동작을 확인하십시오.

키 이벤트는 화살표 키 (왼쪽 및 오른쪽)에서 트리거됩니다.

감사합니다.

답변

0

나는이 문제가 플래시가 키보드를 클릭 할 때 욕심을 느끼고 멀리 떨어지게된다고 생각한다.

당신은 ie youtube에서이 동작을 볼 수 있습니다. 비디오를 선택하면 위쪽 및 아래쪽 화살표를 사용하여 페이지를 위아래로 스크롤 할 수 있습니다. 그러나 플래시 영역 (비디오)을 클릭하면 더 이상이 작업을 수행 할 수 없습니다. 플래시가 키보드를 잡았으므로.

+0

그게 내가 함수 호출로 방지하려고하는 것입니다. 그것은 사파리에서 잘 작동하지만 파이어 폭스에서만 절반 assedly 작동 – Willem

+0

이 질문을보십시오. http://stackoverflow.com/questions/789771/flash-flex-sdk-as3-how-to-keep-keyboard-focus –

0

에 체크를 아웃 : http://code.google.com/p/custom-context-menu/

은 자바 스크립트와 플래시의 오른쪽 버튼을 클릭 비활성화 프로젝트, 그리고 그것을 그렇게 할 때 플래시를 알려줍니다. 또한 매우 다양한 브라우저에서 작동합니다.

없는 100 % 용액,하지만 당신은 당신의 요구 사항이 실제로 내가 원하는 오래 서 파이어 폭스 버그가 수정 될 수있다

+0

마우스 오른쪽 버튼으로 문제가 없습니다. 문제는 Firefox에서 this.focus() 또는 document.body.focus()가 의도 한대로 작동하지 않는다는 것입니다. – Willem

1

에 대한 자신의 JS 코드를 적용 할 수 있어야한다. 나는 모질라 버그 번호를 기억하지 못한다.

0

숨겨진 (또는 절대적으로 멀리 떨어진) 입력 요소에 초점을 맞추고 문서를 초점을 잡으십시오. 입력은 거의 기본 요소이므로 도움이 될 수 있습니다.