Как загрузить часть страницы HTML, которая в настоящее время отображается?

0 ganapati [2010-03-15 12:17:00]

У меня есть электронная книга (относительно большой размер - 800 страниц), в формате HTML. Я открываю эту книгу как веб-страницу с помощью webkit-gtk+. Если я загружаю всю книгу за раз, она занимает слишком много памяти (ОЗУ). Поэтому я не хочу загружать всю книгу за раз, но загружаю часть книги, которая в настоящее время отображается. и когда пользователь прокручивается вниз, должна отображаться следующая часть. Как я могу это реализовать?

javascript html xhtml webkit


1 ответ


1 Aaron Digulla [2010-03-15 12:37:00]

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

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

Проблема заключается в том, когда нужно избавиться от деталей, прочитанных посетителем. Кроме того, полоса прокрутки будет много крутиться. Таким образом, опыт для пользователя не будет таким уж хорошим. Чтобы понять, как это чувствует, загрузите огромный RSS-канал в Google Reader. Он не будет удалять статьи, которые вы видели, поэтому браузер медленно потребляет все больше и больше памяти. С положительной стороны полоса прокрутки безуспешно скачет.