Почему яваскрипт: history.go (-1);не работает на мобильных устройствах? - PullRequest
3 голосов
/ 10 февраля 2011

Сначала немного фона:

У меня есть приложение, которое предоставляет пользователю страницу поиска (html-форму). После того, как критерии заполнены и нажата кнопка «Поиск», результаты появляются под разделом критериев. В списке результатов вы можете просмотреть подробную информацию об отдельном результате, щелкнув ссылку, которая приведет вас на новую страницу. На странице сведений я включил ссылку «Назад к результатам», например:

<a href="#" onclick="history.go(-1);return false">Back to Results</a>

Это прекрасно работает в IE8 / 9, Safari, Firefox и Chrome на рабочем столе. Однако он не работает на моем телефоне Android, эмуляторе Android или iPhone 3G. Я должен отметить, что когда я использую ссылку на рабочем столе, я немедленно возвращаюсь к тому, что кажется кэшированной копией моей страницы поиска с результатами, и я помещаюсь в ту же позицию прокрутки в результатах. На мобильных устройствах кажется, что страница перезагружается с сервера, мои критерии поиска исчезают, а результатов нет.

Если у кого-нибудь есть идеи, с чего начать поиск решения, я был бы очень признателен! Я также могу предоставить более подробную информацию по мере необходимости.

Спасибо и всего наилучшего, CN

Ответы [ 3 ]

2 голосов
/ 30 марта 2012

Использование:

    <a href="javascript:history.go(-1)">Back to Results</a>

то есть не в "onclick", а в "href" - это работа

1 голос
/ 10 февраля 2011

Для Android вам нужно включить javascript в веб-просмотре:

webView.getSettings().setJavaScriptEnabled(true);
0 голосов
/ 10 февраля 2011

Какой метод вы используете для передачи фильтров на страницу поиска?POST или GET?

Если вы используете POST, вам придется повторно отправлять фильтры, когда они возвращаются, иначе на вашей странице не будет чего фильтровать.

Попробуйте переключитьсяв GET и посмотрите, работает ли это.

Я думаю, что важное различие заключается в том, что он работает (то есть отправляет вам обратно страницу), но ваше мобильное устройство не репостирует поля формы?

...