2012-06-05 3 views
0

asp.net 페이지를 IE9로로드 할 때 이상한 문제가 나타납니다.ASP.NET with IE9

기본적으로 천천히 업데이트되고 이상한 코딩이있는 레거시 시스템으로 작업하고 있습니다. 특정 페이지가로드 된 다음 iframe에 기본적으로 비동기 로딩의 다른 버전 인 2000 년 버전이로드됩니다.

iframe 페이지가로드 될 때 (즉, 거의 1 분 이상 돌아 가지 않도록 데이터를 생성해야하는 경우) IE9는 iframe이 실행될 때까지 현재 도메인의 새 페이지를로드하지 않습니다. 페이지가로드됩니다. 따라서 사용자가이 페이지를 방문한 후 다른 페이지를 방문하기로 결정한 경우 다른 페이지로 이동하기 전에 iframe로드가 완료되기를 기다려야합니다. 중지 버튼을 클릭하면 아무 것도하지 않고 iframe이로드 될 때까지 페이지가 계속 유지됩니다.

이 IE가 지원하므로 단지 기업의 웹 애플리케이션이지만,이 문제 (페이지는 심하게 그렇지 않으면 고장,하지만 로딩 지연 문제가 존재하지 않음)

어떤 생각 크롬에서 일이 표시되지 않습니다 ?

편집 : 탭이나 브라우저가 닫혀 있지 않으면 Response.IsClientConnected가 항상 true를 반환하도록 추가해야합니다.

+0

어떻게 이것이 고전적인 ASP와 관련이 있습니까? –

+0

asp.net 또는 asp-classic? – AnthonyWJones

+0

Response.IsClientConnected는 중지 버튼을 누르거나 esc 버튼을 누른 후 계속 true를보고합니까? – AnthonyWJones

답변

0

의 수를 조정하는 경우 다음을 실행 .

IIS는 스레드 안전을 위해 세션을 유지하므로 한 번에 한 페이지 만 액세스 할 수 있습니다. iframe 내부의 페이지가 처리 중이면 세션을 잠궈서 다른 페이지가 완료 될 때까지 기다려야하므로 지연이 발생합니다.

0

시도 페이지에서 멀리 이동하는 요소 중 하나가

window.frames[0].document.execCommand('Stop'); 

를 클릭 할 때 당신이 1 개 이상의 프레임이 나는 해결책을 발견 프레임

+0

그것은 불행하게도 아무것도하지 않습니다. –

+0

iframe에서 "execCommand ('Stop')"을 실행하면 실제로 연결이 중단되지만 IE9는 탐색 할 때까지 기다립니다. 그래서 뭔가가 여전히 차단됩니다. –

+0

먼저 iframe을 멈추고 iframe을 "about : blank"와 같은 다른 위치로 이동 시키십시오. – peter