您只能設置一個啓動畫面,否則會失敗。爲了選擇一個iPad或iPhone的閃屏,你需要一個小小的JavaScript。
,可用於本地應用程序的Web應用程序無法正常工作在iPad景觀閃屏。 iPhone4的視網膜閃屏也不會。你只能選擇一個iPad或iPhone大小飛濺。在link元素上設置size屬性似乎可以在ipad上工作。但擁有多個splash image鏈接元素會導致iphone失敗。
啓動畫面大小必須精確。 iPhone/iPod的320x460和iPad的1024x748。如果你需要一個風景斜線屏幕,你需要在photoshop中旋轉它,因爲在應用重新啓動期間沒有任何控制。
要測試它最好先嚐試關閉應用程序緩存,並用charles proxy或類似的東西來限制帶寬。
<!-- status bar -->
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<!-- hide safari chrome -->
<meta name="apple-mobile-web-app-capable" content="yes" />
<!-- iphone start up screens -->
<script type="application/javascript">
var appl = document.createElement("link");
appl.setAttribute('rel', 'apple-touch-startup-image');
if(screen.width < 321 && window.devicePixelRatio == 1) {
appl.setAttribute('href', 'img/icons/launch320x460.png'); //iphone 3Gs or below
} else if (screen.width < 321 && window.devicePixelRatio == 2) {
//setting @2x or a 640x920 image fails, just use the iphone splash screen
} else if (screen.width < 769 && Math.abs(window.orientation) != 90) {
appl.setAttribute('href', 'img/icons/launch1024x748.png'); //ipad 2 or below (portait)
} else if (screen.width < 769 && Math.abs(window.orientation) == 90) {
//landscape fails as well, use standard ipad screen
}
document.getElementsByTagName("head")[0].appendChild(appl);
</script>
<!-- iphone springboard icons -->
<link rel="apple-touch-icon-precomposed" sizes="57x57" href="img/icons/icon57x57.png" />
<link rel="apple-touch-icon-precomposed" sizes="114x114" href="img/icons/icon114x114.png">
<link rel="apple-touch-icon-precomposed" sizes="72x72" href="img/icons/icon72x72.png" />
我得到了這個腳本的工作,但似乎有一個iPad的啓動畫面的錯誤。如果我第一次在橫向上啓動Web應用程序,則不會顯示任何啓動畫面。如果我第一次以肖像的方式發射,那麼這個閃屏就可以工作,但風景從未起作用。 看來我不是唯一一個有這個問題的人,請在蘋果論壇上查看此主題:https://discussions.apple.com/thread/3316892?start=0&tstart=0 任何人都可以確認他們有在iPad的HTML5網絡應用上成功創建並顯示了橫向和縱向閃屏? – SondreB