#javascript #android #google-chrome #mobile-chrome
#javascript #Android #google-chrome #мобильный-chrome
Вопрос:
По умолчанию она отображается только при нажатии кнопки меню устройства и при пролистывании страницы вниз (см. GIF ниже, когда маркер касания красный). Можно ли отобразить строку URL с помощью JavaScript?
Комментарии:
1. Сайт прокручивается не вниз, а вверх? Кстати, я думаю, что это скорее краевой свайп, а не обычное перетаскивание прокрутки.
2. Вместо «показать» вам лучше использовать термин «показать» 🙂
3. @Bergi Спасибо за совет, я не являюсь носителем языка, но все еще совершенствую свой английский. 😉
4. @Bergi Извините, я имел в виду прокрутку, а не прокрутку.
5. Извините, я не думаю, что вы можете без собственного кода, работающего на Android.
Ответ №1:
Решение
Это возможно только при вводе пользователем из-за ограничений полноэкранного API. Посмотрите демонстрацию.
var p;
function showURLBar() {
p = [window.pageXOffset, window.pageYOffset];
document.documentElement.webkitRequestFullscreen();
setTimeout(function () {
document.webkitExitFullscreen();
setTimeout(function () {
scrollTo(p[0], p[1]);
}, 300);
}, 300);
}
Важные примечания
- Эта функция протестирована только в Chrome 35.0.1916.141, на Samsung Galaxy S4, под управлением Android 4.4.2.
- На других устройствах может потребоваться увеличить время ожидания.
- Чтобы избежать ошибок в других браузерах, используйте кроссбраузерную реализацию полноэкранных функций API вместо webkit.
- Это своего рода хак, поэтому он может стать неэффективным в будущих версиях Chrome.
- Из-за тайм-аута в 600 мс можно заметить некоторое отставание, но без него функция была бы неработоспособной.
- Я безуспешно проверил некоторые другие подходы. Изменение всего URL с помощью
window.location
приводит к повторному появлению адресной строки, но оставление / перезагрузка страницы является нежелательным побочным эффектом. Только изменениеwindow.location.hash
или использованиеwindow.history
также не помогает, даже если URL изменен. Ничего изwindow.scrollBy
,window.scrollTo
,window.scrollTop
не помогает.
Комментарии:
1. 2017 год, и это все еще проблема, и это по-прежнему единственное решение, которое я смог найти. Большое спасибо за это!
Ответ №2:
Я предполагаю, что под словом «устройство» вы подразумеваете мобильное устройство. Я также боролся с этим и просто использовал ярлык на страницу с рабочего стола устройства. Затем вы получаете полноэкранный режим без адресной строки.