Скрыть адресную строку в браузере мобильного устройства

Я знаю 1 способ сделать это.

<body onload="setTimeout(function() {window.scrollTo(0, 1)}, 100)">
...
</body>

но это работает только в том случае, если страница достаточно велика для прокрутки. Если страница соответствует экрану, вышеуказанная функция не будет работать. Как скрыть адресную строку в этом случае ? Мне нужно заставить его работать с iPhone, iPad, устройств Android.

4 ответов


возможно, вы можете установить minheight на теле больше. 480пкс высота экрана в вертикальном режиме + 60px высота адресной строки = 540px.

пример:

body { min-height:540px; }     
body[orient="portrait"] { min-height:540px; }
body[orient="landscape"] { min-height:400px; }

iPhone:

работает только в том случае, если мобильное "приложение" добавляется на рабочий стол (через значок плюс- > добавить на рабочий стол)

<meta name="apple-mobile-web-app-capable" content="yes" />

У меня нет опыта работы с другими мобильными ОС, но быстрый поиск Google для скрыть url-адрес браузера android привело к аналогичному решению для вашего, с окном.scrollTo.


от http://mobile.tutsplus.com/tutorials/mobile-web-apps/remove-address-bar/ я нашел

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); 
        document.body.style.height = 'auto'; 
      }, 50 );
  }
}

немного изменен

работает довольно хорошо в некоторых браузерах, но, по крайней мере, я не могу заставить его работать Android Chrome.


Просто Добавить 'BR' в конце страницы. или вы можете использовать jqueryUI с div height 100%