Все же, основной минус бесконечного скрола — это не столько отсутствие возможности оценить кол-во информации, сколько невозможность в один клик попасть в середину — конец списка. Щелкнуть на страницу №20 всегда проще чем крутить вниз скролл.
Попасть на любую страницу можно и здесь: просто подставьте в URL номер нужной вам страницы.
Поскольку человекопонятные URL'ы сейчас являются стандартом, это должно быть годным решением.
А в чем действительно необходимость переходить на некую конкретную страницу, например 21-ю? Ведь фактически вы не имеете представления о ее содержимом, значит вам в любом случае нужно дойти до нее последовательно. Если же у вас есть некое предположение, что есть некая сортировка, а на 21 странице находится запись, которая как раз должна удовлетворить вашим ожиданиям (по цене, дате, рейтингу, релевантности), то вероятно есть необходимость в иных вариантах категоризации информации.
20 прочитал, пошел спать, комп выключил. Заново все это листать и вспоминать на чем остановился?
Ну или если инет ужасно тупит. Сидишь крутишь-крутишь, а потом просто все перестало работать т.к. инета нет. Рефрешишь страницу — и опять крутишь до посинения. Не спорю, что это уже могут быть и детали реализации. Но с обычным пейджингом как-то проще и удобнее.
С одной стороны я с вами согласен, забыл — нужно запомнить страницу. Но проблема в том, что информация, как правило, в нормальных источниках периодически меняется. Запомните 20 страницу Хабра и утром вы не найдете старых топиков. А если информация действительно идет последовательно — некий архив статей, который читается подряд, то это должна быть либо книга для последовательного чтения, либо набор разделов для нахождения нужных статей.
Я на другой минус наткнулся на каком-то сайте с фотографиями. Листаю себе, листаю. Замечаю, что начинает притормаживать. Запускаю taskmgr и вижу, что один из процессов хрома скушал всю доступную для 32-битного процесса память…
Да да, и это тоже я решал.
На своём сайте пробовал удалять сверху самые ранние результаты, если их выведено слишком много.
А здесь — можно просто перезагрузить страницу, если начнёт тормозить. Итог — продолжите листать оттуда же, где остановились, но старый процесс (в случае хрома) убьётся, и новый, девственно чистый, создастся.
помоему большинство скажет что у вас тормозной сайт нежели будет перезагружать страницу каждый раз, или вы крупными буквами на сайте напишите. «Обнови страницу если тормозит»
забить на этот скролл, делать разбиение на страницы, лучше этого пока никто не придумал. Мы тоже реализовали такую фишку в одном из магазинов и все было, потом когда оказалось что товаров тысячи — скролл стал адом, как не оптимизируй толку от него было гараздо меньше, чем неприятностей. Пользовтелю такая фишка вообще не нужна, он привык к пагинации и к тому что все работает.
Если проблема заключается в том что разрастается DOM (предположительно). можно попробовать для уменьшения страницы инкапсулировать данные уже запрошенные с сервера в объект, или массив JS, по мере загрузки нового контента удалять старые данные из DOM, но оставлять данные в массиве. что позволит нам быстро обращаться к предыдущим данным, в случае необходимости, и вставлять их в DOM, но при этом мы избежим разрастания страницы.
Это хорошее решение, в одно время сталкивался с написанием грида, где требовалось отображать невероятное количество данных. Удалять и вставлять в DOM по прокрутке скроллом, оказалось отличной идеей.
Недавно искал комментарий одного человека на фейсбуке. Открыл его ленту, нажал Ctrl F, вбил слово из комментария (которое помнил), и ничего не нашёл — подгружен только один экран текста.
Пришлось сначала мотать вниз, чтобы подгрузились записи за месяц, и лишь потом искать
Спорить с этим трудно. Но с другой стороны мне очень не часто приходится открывать страницу №20, потому что данные, которые нужно разбить по страницам, как правило, уже отсортированы. Гораздо быстрее поменять условия сортировки чем искать что-то так далеко.
ещё одна из проблем, которую (в некоторых случаях) решает бесконечный скроллинг — на стороне сервера нет необходимости знать, сколько всего данных доступно пользователю, достаточно инициализировать поток и выбрать из него «с N по M», прекратив обработку после. в случае ФБ это, мне кажется, может быть актуально.
В вконтакте есть такая возможность, только не на всех страницах. Во время скрола в правом верхнем углу появляется пагер со страничками, можно ткнуть на любую он подгружает инфу и смещает окно.
Начал писать на русском, чисто для фана, но потом подумал, что этот скрипт может заинтересовать кого-то ещё. А поскольку мы живёт в многонациональном мире, то в будущем код будет переведён на английский. Сейчас просто неохота.
Словил такой глюк: называл файлы по-русски, на винде, и залил на гитхаб.
Оказалось: не дружат русские имена файлов с виндой и гитом.
На Макоси работает нормально.
Изменяемый url — все правильно.
Дополнительный скролл в данном виде — нет, он конкурирует с обычным скроллом браузера. +нарушена иерархия. Нравится как это реализовано на www.wdyl.com/#habrahabr. По ссылке скроллинг не бесконечный, но идея правильная.
+хорошо подписывать в самом контенте до какой страницы из скольки дошел пользователь, если нет надобности принудительно задерживать пользователя на сайте.
+Вместо «Ждите...» всегда лучше ставить preloader и конкретно писать что сейчас произойдет «Загрузка новых товаров», «Загрузка новых статей», etc.
— Как вариант исключения «разрыва шаблона» упользователя, совмещать паджинацию с бесконечным скроллингом (как, например, сделано на vk.com (не днем будет упомянут)
До какой страницы из скольки — я не люблю цифры, и вообще считаю цифры ненужными в быту. Совершенно ненужными. Никому. Это моё мнение. Лучше показать графически.
Именно вконтакт меня и бесит, когда листаю поиск людей или посты на избранных страницах.
Также ВКонакте в теме обсуждения(например, группа «Кубик в кубе»), есть информер с количеством страниц, и при прокрутке показывает на какой странице ты сейчас находишься. Только здесь не меняется адресная строка
Ну не знаю по вашему примеру я не особо замечаю страницы ( а пролистав штук 10 и нажав назад меня начинает раздражать что назад — отлистывает страницы, мне хочется на предыдущую, а не вверх по списку. Да ребята поработали и внедрили интересные решения для насущных проблем, но мне привчней стандартное решение
> Я согласен с автором. Я сам — наркоман, и порою сижу за монитором как зачарованный, со стеклянными глазами, кручу-кручу-кручу волшебное колёсико, не в состоянии пойти по делам/на работу/в магазин/поесть/попить/в туалет, и кручу я его с одной единственной мыслью: «Ну когдааа же вы все уже закончитесь?!» (что поделаешь — я привык доводить дела до конца
Специально для вас гугл ограничил выборку поисковика всего 100 страницами.
там (скачайте архив, и запустите файл «test/test.html») должен быть тег <s>
З.Ы. почему мне показывают теги для сообщений, но использовать их я не могу?
Если вы сами не бились над решением этой вселенской проблемы, то конечно вам будет слишком лениво сделать пару дополнительных кликов мышью, и вряд ли вам вообще пригодится мой код.
Процедура ОбработкаВнешнегоСобытия(Кто, Что, Зачем)
Если Кто=«LRC_Modem» Тогда
Если Что=«LRC_Modem» Тогда
Сообщить(Зачем);
КонецЕсли;
КонецЕсли;
КонецПроцедуры //ОбработкаВнешнегоСобытия
Вообще, такой скрол как идея мне очень нравится, в нативных апликушках видел. Скрипт тоже неплох, хрен бы на кирилицу, главное что он реально работает. Буду юзать, еси автор на меня бочку не покатит за копирайту там всяческую…
Больше всего в бесконечном скролле меня бесит то, что хрен нажмешь на ссылки в футере страницы. Новые записи грузятся быстрее чем я успеваю среагировать. Ужасно бесит. Складывается ощущение, что специально издеваются
Самая большая проблема в бесконечном скролле, это наличие скролла. Он совершенно лишний и только путает. Тут нужен скролл на подобии скролла на сенсорных экранах, когда скроллить нужно сам контент, а не узкую полоску, которая постоянно убегает от тебя и меняет свое положение на экране. Оценивать объем материала в бесконечном скролле не нужно, ведь оно известно — оно бесконечно. Хотя на гугле очень удобно скроллить клавишами j/k по постам, или PageUP/PageDown если нужно «просканировать» контент. Проблема бесконечного скролла удобно решается клавиатурой. Не всем подойдет, но мне это удобно. Не говоря уже о том, что управление с клавиатуры намного быстрее и удобнее, когда к ним привыкаешь.
Улучшаем «бесконечный скроллинг»