2013-02-11 3 views
3

나는 컴퓨터뿐만 아니라 Ipad, 아이폰, 태블릿과 안드로이드 휴대폰에서 작동하는 응용 프로그램에서 일하고 있습니다. 나는 사용자에게 한 페이지에서 다른 페이지로 이동할 때 로딩 중 ... gif를 표시하는 한 가지 요구 사항이 있습니다. 이는 사용자에게 페이지 로딩/언로드가 진행 중임을 알리는 정보를 사용자에게 제공하기 때문입니다. 로딩하기 GIF BeforeUnload 페이지의

그래서 나는 다음 시도 DOM이 준비되지 않은 상태에서 GIF를 표시하기위한 코드 아래 /// 코드 을 언급했다.

$(document).ready(function(){ 
    $("#loading").hide();}); 

// 일부 사용자가 일부 서버 상호 작용을 수행 할 때 GIF를 표시하기위한 코드입니다.

$(window).bind('beforeunload',function(){ 
     $("#loading").show();}); 

여기서 #loading은 내 GIF 코드가 포함 된 div의 ID입니다. 이제는 PC 브라우저에서 크게 작동하지만 Ipad, Iphone 및 Android 휴대 전화에서는 작동하지 않습니다. 나는 이유를 알아낼 수 없다.

<div id="loading"> 
    <img id="loading-image" src="/img/loading.gif" alt="Loading..." /></div> 

이 div는 GIF를로드하기위한 것입니다.

+0

iOS에는 'onbeforeunload' 이벤트가 없습니다.로드하는 데 다른 방법을 찾아야합니다. 왜 아약스로 가지 않을까요? 우리가 한 페이지에서 이동하는 동안 나는 당신의 도움을 주셔서 감사하지만 http://stackoverflow.com/questions/6205989/is-there-an-alternative-method-to-use-onbeforeunload-in-mobile-safari – YoannM

+0

@YoannM를 참조하십시오 그렇다면 우리는 어떻게 Ajax를 사용할 수 있습니까? 그래서 jquery/javascript 대안을 찾고 있어요. –

+0

현재 페이지에서 다른 페이지의 내용을 가져올 수 있습니다. 그런 다음 현재 내용을 새 내용으로 바꿉니다. 그냥 아약스 전화예요. jQuery $ .ajax 함수를 살펴보십시오. http://api.jquery.com/jQuery.ajax/ – YoannM

답변

0

unload을보십시오.

$(window).unload(function() 
{ 
    $('body').html('<img src="img/4.gif" alt="" />'); 
});
+0

. 나는 전에 이것을 시도했다. –

+1

브라우저가 다른 http 요청을 보내고 이전 데이터를 지우므로 새 페이지를로드하기 전에 그리고 이전 페이지를 언로드 한 후에 실행할 코드가 없으므로 ... –