SO の投稿からアドレス バーを非表示にする方法を見つけたので、このスクリプトを実行して、アドレス バーがビューからスクロールされた後にビューポートの高さを取得する必要があります。
しかし、1 秒後に getViewPortSize() 関数を呼び出しますが、H 値と W 値はスクロールが行われる前に返されます。ダイアログ ボックスの [OK] をクリックすると、アドレス バーがスクロールされます。
これを期待どおりに機能させるのを手伝ってくれる人はいますか?
$(document).ready(function () {
window.addEventListener("load", function () { if (!window.pageYOffset) { hideAddressBar(); } });
window.addEventListener("orientationchange", hideAddressBar);
setTimeout(getViewPortSize(), 1000);
function getViewPortSize() {
var viewportWidth = $(window).width();
var viewportHeight = $(window).height();
alert('viewportHeight: ' + viewportHeight);
}
function hideAddressBar() {
if (!window.location.hash) {
if (document.height < window.outerHeight) {
document.body.style.height = (window.outerHeight + 50) + 'px';
}
setTimeout(function () { window.scrollTo(0, 1); }, 0);
}
}
});