Earlier quoted context omitted.
OTOH: - usually breaks the back button (e.g. scroll to the 20th page, click something, go back. welcome to page 1!) - usually breaks links (how do you show someone things-on-page-10?) (fixable by tweaking the URL as you go, but nothing is really consistent + predictable by non-technical users) - usually performs hideously on low-power machines (e.g. mobile) due to memory growth (there are techniques, but few use them…
> usually breaks the back button (e.g. scroll to the 20th page, click something, go back. welcome to page 1!) This is easily overcome by pushState or what have you. As you scroll, the URL in the address bar changes to like `/page/20/` and then going back takes you to that URL where only the results from page 20 are displayed.
Another approach is with "virtual scrolling", by preserving space for the items above and loading whatever you scroll to - I've seen that once (I forget where) and it was really nice. They didn't tackle the linkability problem tho, and had other issues.
But all of this is fairly complex, and very few sites (or apps!) actually do so. Which is part of the problem.