Live data from Hacker News

Infinite Scrolling: When to Use It, When to Avoid It

nngroup.com

61–70 of 175 posts

Re: Infinite Scrolling: When to Use It, When to Avoid It

#61
post #2

Infinite scrolling is universally bad for one, very simple reason: It breaks the scroll bar. One of the purposes of a scroll bar is to indicate how long (and/or wide) some piece of content is relative to your window. Another purpose is to indicate your current X/Y position within some piece of content. Both of those purposes are completely broken with the use of infinite scrolling, because the length (and/or width) o…

> One of the purposes of a scroll bar is to indicate how long (and/or wide) some piece of content is relative to your window. Another purpose is to indicate your current X/Y position within some piece of content. Seems fine to me? New content is appended, so the length and your position changes. Scroll bar reflects what’s going on. What’s the problem?

Yeah, I'll bite. How is a growing scrollbar bad for accessibility? Why is an understanding of how long a page is an accessibility concern?

Re: Infinite Scrolling: When to Use It, When to Avoid It

#62
post #2

Infinite scrolling is universally bad for one, very simple reason: It breaks the scroll bar. One of the purposes of a scroll bar is to indicate how long (and/or wide) some piece of content is relative to your window. Another purpose is to indicate your current X/Y position within some piece of content. Both of those purposes are completely broken with the use of infinite scrolling, because the length (and/or width) o…

It also means that when dragging the scroll bar, the page will suddenly jump when it loads in more content

That sounds like a deficient implementation for a scroll bar widget, more than anything else.

Re: Infinite Scrolling: When to Use It, When to Avoid It

#63
post #2

Infinite scrolling is universally bad for one, very simple reason: It breaks the scroll bar. One of the purposes of a scroll bar is to indicate how long (and/or wide) some piece of content is relative to your window. Another purpose is to indicate your current X/Y position within some piece of content. Both of those purposes are completely broken with the use of infinite scrolling, because the length (and/or width) o…

I completely agree with you so I wrote one awhile back that doesn't break the scrollbar and also returns you to where you were on browser back. It's not perfect but I don't really care to improve it and no one has had any complaints. Check it out here: https://sayartii.com/search

This doesn't appear to be infinite scrolling. I can scroll to the bottom of the list with Cmd-Down. It just appears you're lazily rendering results.

N.b. it's incredibly slow, because it has to load every batch above the scroll position first. Try going to the bottom of the page and seeing how long it takes for results to render.

Re: Infinite Scrolling: When to Use It, When to Avoid It

#64
post #44

Earlier quoted context omitted.

even if the website did re-start where you left off (difficult), what if you scroll backwards? When you send a link, should it point to the page that you scrolled to, or to the beginning of the list? How many items before/after should load? These arise solely because people chose to reinvent a browser -in-the-browser. With pagination we dont have these issues, the link points to a specific results page, uniquely.

You can still have weird issues with pagination if the data set you're paging through is mutable. Reddit used to struggle with this back in the day. The way they did pagination was to say "show the next page after id postId=xyz123". Since the algorithm kept re-sorting the posts on the front page, the content moved around quite a lot and you'd see the same things re-appearing on page after page, and sometimes post xyz…

Infinite scroll or not you’ll have this problem on a mutable set of items. You’ll have to dedupe the next “page” either client side or server side. Or something!

It’s one of the reasons that the “I can build XYZ app in a weekend” crowd sounds so silly. I bet Reddit spent dozens of not hundreds of man-months nailing their scrolling behavior. It probably took many iterations of UX, product and engineering to get it right. And even now I bet they have a pile of JIRA tickets buried in their backlog relating to the pagination system.

In my experience there is a non linear relation between the more seemless and “easy” something appears and the amount of work that went into it. Things seem “easy” because the developers poured a pile of fit & finish on the system.

Re: Infinite Scrolling: When to Use It, When to Avoid It

#65
post #27

Earlier quoted context omitted.

Pagination also makes things unlinkable, though. Not that I’m not necessarily defending infinite scrolling, but it’s a tough problem.

Not necessarily, if the URL has some absolute position like the ID of the first item instead of the relative number of pages between the newest item and the current page. I believe that Reddit does something like that (of course, only if you sort by new).

Terms to Google for are "offset pagination" vs. "cursor pagination." There are tradeoffs in using either approach.

Recent HN post: https://news.ycombinator.com/item?id=32495846

Re: Infinite Scrolling: When to Use It, When to Avoid It

#66
OpenAI Dall-e uses infinite scrolling to display your saved images. If your window is large enough to not have an active vertical scrollbar, it will never load all your images. So, instead of pagination, you have to resize your window to the size of a phone and rage scroll downward to load more images. Odd UX choice.

Re: Infinite Scrolling: When to Use It, When to Avoid It

#67
post #11

Earlier quoted context omitted.

It also breaks the "virtual scrollbar". if you reload the page you have to start all over

This is my primary issue with infinite scrolling. However, I wonder if it’s mostly a problem with today’s web browsers. Heck—maybe it’s not even browsers, but websites. I’m pretty sure a website could change the URL as you scroll, so if the page is reloaded (or bookmarked, etc) you’re brought back to where you left off. I usually dislike it when websites mess with URLs, but this seems like an excellent use case!

> you’re brought back to where you left off

Which is all fun and games until the “page” is actually a mutable and constantly changing list. With a mutable list there is no concept of “where you left off”.

Re: Infinite Scrolling: When to Use It, When to Avoid It

#68
post #54
post #2

Infinite scrolling is universally bad for one, very simple reason: It breaks the scroll bar. One of the purposes of a scroll bar is to indicate how long (and/or wide) some piece of content is relative to your window. Another purpose is to indicate your current X/Y position within some piece of content. Both of those purposes are completely broken with the use of infinite scrolling, because the length (and/or width) o…

> Infinite scrolling is universally bad for one, very simple reason: It breaks the scroll bar. It also breaks the back button, in all implementations I have seen so far.

What is “back” on a dynamic page like Reddit, Facebook or even this site? If “back” means “show me exactly what I last saw” it might mean you are showing stale data.

I dunno. Shit ain’t easy once you think about it for a while.

If all you have is a static unchanging set of items… might as well just use old school pagination! At least in my opinion. It’s when the list of items is constantly changing that things get interesting.

Re: Infinite Scrolling: When to Use It, When to Avoid It

#70
post #2

Infinite scrolling is universally bad for one, very simple reason: It breaks the scroll bar. One of the purposes of a scroll bar is to indicate how long (and/or wide) some piece of content is relative to your window. Another purpose is to indicate your current X/Y position within some piece of content. Both of those purposes are completely broken with the use of infinite scrolling, because the length (and/or width) o…

On mobile devices the scroll bar is barely visible. So this is a non-issue for mobile.

I don’t even think you can grab the scroll bar and move around on iOS… though I kinda remember you being able to way back in the day…
Post reply on HN