2010-03-10 5 views
3

아이폰에서 사파리에 최적화 된 웹 사이트 버전을 개발하기 위해 jQTouch를 사용하고 있습니다. jQTouch 데모는 전체 화면 모드를 사용하지 않는 사용자에게 "이 메시지를 설치하십시오"라는 메시지를 표시하고 해당 메시지를 숨기는 방법을 보여줍니다. 전체 화면 모드에서는 본문의 클래스가 "전체 화면"이어야합니다. 내가하고 싶은 무엇jQTouch 응용 프로그램에서 전체 화면 모드를 요구하는 방법은 무엇입니까?

body.fullscreen #home .info { 
    display: none; 
} 

사용자가 필요 : 그래서 당신은 이미 스타일이 CSS 규칙을 추가하여 자신의 홈 페이지에 응용 프로그램을 추가 한 사용자에 대한 메시지 "이 설치"를 숨길 수 있습니다 전체 화면 모드로만 앱을 사용합니다. 일반 브라우저에서 볼 때 앱을 설치하라는 메시지 만 표시됩니다. 물론 그 메시지는 다른 방법으로 숨겨져 야합니다.

정말 쉽고 쉬워야합니다. 그래서 분명히 뭔가 빠져 있어야합니다.

나는 이것을하기위한 한가지 방법은 단순히 몸체의 "fullscreen"클래스를 테스트하는 것이라고 생각했다 : 거기에 없다면 goTo를 사용하여 다른 div로 이동하거나 다른 divs를 숨기거나 그와 비슷한 것을 숨긴다.

그러나 이상하게도 작동하지 않습니다. 테스트로서 jQTouch 데모에서와 같이 원래의 "info"메시지가 남아 있으며 전체 화면 모드로 시작할 때 표시되지 않습니다. 따라서 본체 은 전체 화면 클래스가이어야합니다. 나는 또한 내가 테스트 거라고 생각

alert($("body").attr("class")); 

: 그리고 아직 내가 다른 어떤 흔적을 찾을 수 없습니다 : 전체 화면 모드에서 실행할 때 나는 문서가로드 된 후 일을 테스트하기 위해이 경고를 둘 때, 나는 아무것도 얻을 fullScreen 부울 값을 확인하여 전체 화면 모드로 설정합니다. 그러나 이것은 작동하지 않는 것 같습니다. 내가 뭘 놓치고 있니? 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

답변

2

잘 표준 방법이 작동하지 않는 이유를 알아낼 수 없었다,하지만 jQTouch Google 그룹에 누군가가 어떤 작품이 제안 :

if (window.navigator.standalone) { 
    alert ('Thanks for launching this app your home screen') 
} else { 

    alert('Add this app to your home screen for the best experience') 

} 
관련 문제