2009-07-08 3 views
4

저는 PHP, mysql을 사용하여 AJAX 채팅 응용 프로그램을 작성했습니다. 이제 거의 완료되었습니다. 내가 직면 한 유일한 문제는 사용자가 응답을 게시하기 위해 메시지를 입력하는 텍스트 상자가 비동기 아약스 호출 중에 포커스를 잃어 버리는 것입니다.jQuery를 사용하여 비동기 아약스 호출 중 TextBox가 포커스를 잃었습니다.

여기서 일어나는 일은 두 개의 다른 AJAX 호출로 끊임없이 업데이트되는 두 개의 div가 있다는 것입니다. 하나는 온라인 사용자 용이고 다른 하나는 메시지 목록 용입니다. 완벽하게 작동합니다. 사용자에게 실시간보기를주기 위해 아약스는 2 초마다 또는 그와 비슷한 것을 자주 호출해야합니다. 아약스 함수는 완벽하게 작동합니다. 아약스 호출이 진행 중일 때만 사용자가 메시지를 입력하면 포커스가 사라지고 브라우저의 다른 곳을 클릭하고 다시 입력하기 위해 텍스트 상자로 돌아와야합니다.

도움이 되시면 감사하겠습니다. 친애하는.

답변

1

통화를 시작하고 수익을 처리하는 방법에 대해 자세히 설명해 줄 수 있습니까? 그것은 분명히 그렇게해서는 안됩니다.

예를 들어, 실제로 모든 자동 완성 구현은 똑같은 일을하지만 초점을 잃지는 않습니다. 입력 상자에 입력하면 입력 상자 아래에있는 div는 자동으로 입력란의 포커스를 잃지 않고 ajax 호출을 통해 자동 완성 옵션/제안으로 업데이트됩니다.

0

게으른 해결 방법이 있더라도 작동하지만 텍스트 입력란에 포커스를 되돌리려면 ajax 호출에 textbox.focus()를 넣을 수 있습니까?

0

비동기식 AJAX 호출을 사용하여 DOM 요소를 업데이트해도 양식 포커스를 방해해서는 안됩니다. 코드를 게시 할 수 있습니까? 나는 코드없이 우리가 당신을 도울 수 있다고 생각합니다.

또한 설명하는 증상은 브라우저가 정지 된 것일 수 있습니다. AJAX 호출 중 및 처리 후 처리량은 얼마나됩니까?

관련 문제