モバイル サファリでは、このwindow.scrollTo(0, 0)手法を使用してアドレス バーを非表示にすることができます。アドレスバーが非表示になると、window.innerHeight最大 60px 増加すると予想されました。しかし、そうではありません。
アドレスバーが非表示になった後、使用可能な画面スペースを確認するにはどうすればよいですか?
アップデート:
ちょっとしたコード:
$(window).load ()->
alert window.innerHeight
window.scrollTo(0, 0) #hide the address bar
delayedHeightCheck = ()->
alert window.innerHeight
setTimeout(delayedHeightCheck, 0) #wait until next event loop to check height after address bar hide
そのコード444は、最初alert()と5042 番目のアラートでアラートを出します。したがって、モバイル サファリは正しいことをしているように見えます。
delayedHeightCheckこれを jQuery ウィジェットの一部として使用しているため、混乱しました$(document).myWidget()。として設定していた高さのオプションがありましたwindow.innerHeight。そのオプションを()-> (window.innerHeight)代わりに関数 ( ) に置き換えると、期待どおりの結果が得られます。