2013-09-24 4 views
0

페이지가 준비되거나 크기가 조정될 때 사용 가능한 공간에 맞게 자동으로 크기가 조정되는 일부 div 및 내용 (검도 스플리터의 검도 UI 격자)이있는 웹 페이지가 있습니다. 이것은 Javascript + JQuery의 일반적인 트리거 처리를 통해 발생하며 원활하게 작동합니다. 페이지가 표시되면 Javascript 이벤트가 발생합니까?

그러나 도구 모음이 열려 방화범처럼, 다음과 같은 상황이 발생하는 경우 :

나는 새로 고침 및 페이지가로드되기 전에 다른 브라우저의 탭으로 전환하면, 나는 다시 내 페이지에 와서, 내가 볼 하나 divs (그리드의 것)의 그것은 그것의 컨테이너보다 크기 때문에, 그것은 약간의 픽셀의 오버 플로우가된다. 그런데 페이지가 표시된 후 몇 순간이 발생하므로 visibilitychange 트리거를 사용할 수 없습니다.

페이지 내 디버거를 열면 IE에서도 마찬가지입니다.

나는 KendoUI 위젯이이 문제와 관련이 있다고 생각하지 않지만, 완벽을 기하기 위해보고합니다.

그래서 나는 그것을 수정하는 가장 좋은 방법은 사용자가 문서를 표시 할 때 트리거되는 이벤트를 활용하는 것이라고 생각했습니다. 존재합니까?

답변

2

당신은이 같은 windowfocusblur 이벤트를 수신 할 수 있습니다 : 당신이 다른 탭이나 브라우저 창 아닌 다른 창으로 이동하면

$(window).on('focus', function() { 
    //(...) 
}); 

blur 이벤트가 발생합니다. focus 이벤트는 그 반대입니다.
여기에 jsfiddle을 추가 할 수 있지만 iframes을 사용하므로 제대로 테스트 할 수 없습니다.

+0

내가 시도했지만 질문에 상태로, 나는 페이지로 다시 전환 한 후 크기 조정의 혼란이 발생한다는 것을 알아 차렸기 때문에 작동하지 않습니다. 유일한 해결책은 타임 아웃을 설정하는 것입니다. – Pizzaboy

관련 문제