#javascript #html #mobile #reload
Вопрос:
на рабочем столе сайт, который я создал, работает отлично, однако на мобильном устройстве страница постоянно обновляется, не позволяя пользователю просматривать какой-либо контент. У меня возникли трудности с адаптацией моего сайта, поэтому я создал новый файл под названием mobile.html чтобы правильно отобразить все содержимое. Когда экран имеет определенный размер, сайт перенаправляется на mobile.html. Вот код, который, по моему мнению, создает проблему.
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="viewport" content="width=1500px, maximum-scale=1.0" />
<script type="text/javascript">
if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|OperaMini/i.test(navigator.userAgent) ) {
document.location = "mobile.html";
}
</script>
Как я могу исправить эту проблему?
Ценю любую помощь, Спасибо
Ответ №1:
Прежде всего, проверьте mobile.html
и убедитесь, что у вас нет кода пересылки.
В качестве альтернативы вы можете проверить, что текущая страница отсутствует mobile.html
. Вы можете использовать код ниже, это увеличит контроль над вашей страницей. Сначала проверьте, является ли агент пользователя мобильным, а затем проверьте, является ли текущая страница mobile.html
мобильной, если оба значения верны, это означает, что пользователь подключается с мобильного устройства, но не просматривает мобильную страницу, поэтому перейдите на мобильную страницу.
var url = window.location.pathname;
var filename = url.substring(url.lastIndexOf('/') 1);
var mobilePage = 'mobile.html';
if(/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|OperaMini/i.test(navigator.userAgent) amp;amp; filename !== mobilePage ) {
document.location = mobilePage;
}
Ответ №2:
Попробуйте этот код…
<script type="text/javascript">
if (document.location == "example.com/mobile.html") {
//do nothing
}
else if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|OperaMini/i.test(navigator.userAgent)) {
document.location = "mobile.html";
}
</script>