2011-12-23 3 views
0

Я использую jQuery появился плагин в течение некоторого времени, но, похоже, у меня есть проблема.Как правильно использовать jquery появляется плагин

Вот как я это делаю в данный момент.

У меня есть страница неопределенной длины. Это список скрытых SPAN с видимым только первым. HTML загружается в эти SPAN из обработчика событий OnAppear. В этом же обработчике событий я делаю следующий SPAN видимым, устанавливая его свойство style.display.

Все работает хорошо, за исключением случаев, когда возникает следующий сценарий.

Предположим, что пользователь некоторое время прокручивал страницу и аккумулировал на ней довольно много контента (загружаемый обработчиком событий OnAppear). Он выбирает один элемент и открывает подробный вид, и это другая страница. Посмотрев подробный вид, пользователь хочет вернуться к списку и нажимает кнопку BACK в браузере.

Браузер пытается использовать кешированную версию страницы, прокручиваемую вниз. Но весь контент, загруженный OnAppear, отсутствует. Пользователь видит нижнюю часть очень длинной пустой страницы.

Мой вопрос: есть ли подходящий шаблон для использования jquery Appear plugin, чтобы справиться с этой ситуацией?

Т.е. когда пользователь вернется на страницу с помощью кнопки BACK браузера, я хочу, чтобы пользователь увидел один SPAN с загруженным в него содержимым. Если пользователь прокручивает вверх или вниз от этой позиции на странице, будет выполняться обычная обработка OnAppear.

+0

Значок удален, см. FAQ http://stackoverflow.com/faq#signatures –

ответ

0

Я бы предложил сохранить позицию, по которой пользователь прокручивался до сессии или аналогично, и соответствующим образом реагировать на содержимое. Вы не сможете влиять на поведение браузера, он всегда будет пытаться воспроизвести позицию, в которой находился последний пользователь.

+0

Конечно! Все, что я должен добавить, это запомнить последнюю страницу запрошенного клиентом результата и направление, по которому мы движемся (вверх или вниз) на сервере. Спасибо за вдохновенный ответ! – savraska

+0

Существует еще одна проблема: OnAppear запускается только один раз для элемента. Он не срабатывает, когда пользователь возвращается на страницу с помощью кнопки BACK. – savraska

+0

Я думаю, что вам придется пропустить OnAppear при загрузке страницы полностью, как только вы отреагируете на информацию из сеанса. Вам, вероятно, также потребуется очистить сеанс в определенные моменты вашей навигации (например, при нажатии на определенные ссылки на указанную страницу), поэтому у пользователя есть свежий старт в верхней части после определенных кликов, а не для принудительного возврата к где он был, когда последний раз просматривал страницу. Как только страница будет загружена, и позиция будет восстановлена, снова загрузите свой контент с помощью OnAppear. – bkzland

Смежные вопросы