Safariのツールバーを出なくする

すでにいくつかのサイトでも話題になっているが、iPhone/iPod touchSafariでwebアプリを開いたときに、上のアドレスバーや、下のメニューバーを出なくする設定が発見されている。

<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />

上の設定が、webアプリモードにするもので、これを書いた場合、ホーム画面にアイコンを置いたブックマークから起動すると、webアプリモードになり、アドレスバーやメニューバーが表示されなくなる。

下の設定は、一番上の電波状態や時刻が表示されているバーの部分を、半透明にする設定で、上のアプリモードの設定があるときのみ有効のようだ。


副作用としては、メニューが出なくなるので、Safariとしてのページ移動やブックマークの機能が使えなくなるということ。

それからページ遷移についても、普通のブラウジングと違う挙動があるので注意が必要だ。

リンクによるページ遷移の場合、リンク先が開かれるときに通常のSafariによるブラウジングに戻ってしまう。つまりページ遷移した段階で、webアプリモードが解除されてしまう。
また、target="_blank"等を書いたリンクは無視され飛べないし、window.open関数で開いたページは、Safariが起動するものの元のページが表示されてしまう。
おそらくこのあたりはセキュリティ上の配慮なのだろう。

例外としては、javascriptでlocation.hrefを変更した場合は、webアプリモードのまま同じ画面内でペーシ遷移ができるようである。


というわけで事実上、1ページで完結するか、ajax的な画面遷移のwebアプリのみで有効な設定のようである。