2011年6月24日金曜日

iphone・ipod touchのアドレスバーを隠す

webアプリを作る際に普通にiphoneのsafariで開くとアドレスバーが表示されている。
これを見えなくする場合はscrollToで1ピクセルでもスクロールさせると勝手にスクロールが見えなくなってくれる。
ただし、実際に画面が416px以上の縦幅が必要みたい。

<script type="text/javascript">
    window.onload = function() {
        setTimeout(doScroll, 100);
    }
    function doScroll() {
        if (window.pageYOffset == 0) {
            window.scroll(0, 1);
        }
    }
</script>

タイマーで動作させているのは、onload時では早過ぎるため。
プラスwindow.pageYOffsetで0の判定をしているのは戻るボタンで戻った場合とかにまた先頭に戻ってしまうから。

他にもmetaタグで隠すこともできるらしいけど、まだ試してないからとりあえず記述だけ。
<meta name="apple-mobile-web-app-capable" content="yes" />

0 件のコメント:

コメントを投稿