Обнаружив, как скрыть адресную строку из сообщения SO, мне нужно выполнить этот скрипт, чтобы получить высоту видового экрана. ПОСЛЕ того, что адресная строка прокручивается вне поля зрения.Веб-приложение Скрыть адресную строку при запуске слишком поздно
Но значения H и W возвращаются до того, как происходит прокрутка, хотя я вызываю функцию getViewPortSize() через 1 секунду позже. Как только щель щелкает 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);
}
}
});
Конечно, взломать было бы добавить 25 пикселей (Android) на высоту видового экрана (и любую высоту для iPhone), но это было бы просто ошибочным решением. –