Sunday, August 11, 2013

mice, scrollbars and lazy loading don't mix

If you're designing for a platform that allows user input in multiple forms you must account for all the forms of user input at each time.

Let's consider what happens if you've got a list that the app will add more to it when the user gets near to the end.
For example, imagine a list that starts with 20 items and when the user gets 5 from the end it loads 10 more. If the app can always load more this will go on forever or maybe it only does this until it can load no more.
Now consider a non-touch screen device--there are still a lot of them around.  To scroll the list the user uses their mouse and drags the scrollbar.
Considering the above, if the user drags the scrollbar 75% of the way down we reach the magic trigger value. Let's say the user hovers at this point to view the items at that position in the list. But then all of a sudden, without the user doing anything, the items on display have changed.


What happened?
  • The user was confused.
  • The user lost confidence in their ability to use the app.
  • The user lost confidence in the app.

Not feelings or reactions you should want to create in your users. Well, not if you want them to come back and use your app again, leave positive reviews or recommend it to others.

What happened technically?
After the additional items had been added to the list, it changed from showing the items 75% of the way through 20 items to be showing the items at 75% through 30 items. Depending on how many items are visible at once this might mean that the items that were on display are now completely gone.

If you have an app that incorporates lazy loading, I'd recommend implementing an alternative way of allowing a user to interact with the list than just dragging the scrollbar if using a mouse.



1 comment:

  1. This comment has been removed by the author.

    ReplyDelete

I get a lot of comment spam :( - moderation may take a while.