Переадресация с мобильного на обычный сайт - PullRequest
4 голосов
/ 02 января 2012

У меня есть сайт CV / Resume, и когда пользователь заходит на мой сайт и разрешение экрана ниже 960, я перенаправляю его на свой мобильный сайт через этот JS

    <script type="text/javascript">if (screen.width <= 960) {document.location = mobile.html";}</script>

У меня вопрос, если пользовательхочет посетить обычный сайт и нажать на ссылку, javascript снова запустится и перенаправит пользователя обратно на мобильный сайт.Одним из способов решения этой проблемы может быть дублирование обычного сайта, скажем, index.html и index1.html, один с приведенным выше кодом, а другой - без JS, но я думаю, что это решение настолько дурацкое.Любой способ решить эту проблему?Прежде чем ответить, пожалуйста, обратите внимание, что у меня нет доступа к файлу .htaccess.

Моя проблема в том, что когда пользователь заходит на мой сайт с шириной экрана менее 960, переходят на мобильный сайт, но если он хочет увидеть полный сайтнажмите на ссылку и перейдите на полный сайт независимо от ширины экрана.

Ответы [ 2 ]

5 голосов
/ 02 января 2012

Вот небольшой фрагмент кода. Когда пользователь переходит с мобильного телефона на обычный, запустите следующий код:

var expires = new Date();
expires.setHours(expires.getHours + 24); 

document.cookie = (document.cookie ? document.cookie + ' ;' : '')
     + ' disableMobile=1; expires=' + expires.toGMTString();

, а затем измените условие перенаправления на

   if (screen.width <= 960 && document.cookie.indexOf('disableMobile') < 0) [...]
3 голосов
/ 02 января 2012

На ум приходят два пути:

  1. Используйте cookie-файл, чтобы предпочтение пользователя оставаться на полном сайте было запомнено. Создайте / установите cookie непосредственно перед перенаправлением.
  2. Используйте параметр запроса, <a href="index.html?fullsite=true">Full site</a> (или аналогичный), который вы задали только в ссылке с mobile.html на обычный сайт.

Затем добавьте условие к существующему тесту ширины экрана, чтобы он выполнялся только в том случае, если не задан параметр cookie / запроса.

(Вы также можете добавить дополнительную ссылку на главную страницу индекса, чтобы позволить пользователю выбрать мобильную версию. Очевидно, что если вы отправляетесь по маршруту cookie, это должно очистить cookie.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...