2009-09-23 4 views
2

나는 앱의 데스크톱 버전 용으로 이미 작성한 jQuery 코드를 사용하여 모바일 사파리/아이폰 웹 앱을 만들려고합니다. 내가 겪고있는 문제는 내 휴대 전화가 웹 응용 프로그램이 실행 중일 때 잠자기 상태가 될 때 잠에서 깨어 나면 JavaScript 이벤트 처리기가 더 이상 작동하지 않는다는 것입니다. 이 경우에는 onclick 이벤트를 통해 AJAX 업데이트를 수행하는 링크를 클릭 할 때 새로운 Safari 윈도우에서 페이지를 열어 링크를 실제로 따라 가면서 네이티브 아이폰 앱의 모양을 깨트 렸습니다.iPhone 웹 애플리케이션 잠자기에서 깨어 난 후에 자바 스크립트 이벤트가 깨졌습니다.

$(function() { 
var ajaxLoad; 
var ajaxClick = function(e) { 
    e.preventDefault(); 
    e.stopPropagation(); 
    $("body").load($(this).attr("href"), ajaxLoad); 
} 
ajaxLoad = function() { 
    $(this).find("a").click(ajaxClick); 
} 
$("a").bind("click", ajaxClick); 
}); 

코드가 웹 응용 프로그램 프레임에서 열립니다 링크, 그것은 휴식 때, 코드 위반, 새로운 사파리 창에서 열립니다의 결과를 작동 할 때 : 작동이 중지

코드 실제 앱의 모습.

+0

코드를 게시하면 도움이 될 것입니다 ... – Dror

+0

요청에 따라 jQuery 코드를 추가했습니다. – user177843

+0

행운이 있었나요? 비슷한 문제가 발생합니다. http://stackoverflow.com/questions/2204438/iphone-jquery-breaks-after-triggering-the-email-overlay – devth

답변

0

테스트되지 않았지만 링크가 활성화되지 않도록 ajaxClick 함수의 끝에 'return false'를 추가하는 것이 도움이됩니다.