A number of problems exist with multiselect list boxes:

Multiselect example

Existing Solutions

Some solutions suggest combining checkboxes, such as:

Example solutions


Nearly every (jQuery) implementation I've encountered provides no facility to select several items quickly by dragging to check options. This results in selection attempts that look as shown on the left, when I'd've expected the results on the right (the highlighting could be disabled so that dragging doesn't select text, but still permits strafing the checkboxes):


Example demos to toggle checkboxes:


What design decision warrants breaking backwards compatibility with using dragging to select (i.e., check, or perhaps toggle) multiple items?

  • Let user select many lines (drag/ shift or ctrl click) and change the check/unchek of the whole selection to the same state when the user click on one of the check box inside the selection. It's a good way not to create confusion, and give user functionality. Combining Drag to select and drag to check seems dangerous.
    – ColdCat
    Mar 27, 2014 at 11:59

2 Answers 2


This is one of my favorite Photoshop features that I am amazed isn't more prevalent. (It's used in the layers panel to show/hide layers). I never realized it was called checkbox strafing though (awesome name!).

It's one of those odd things that initially feels like it will be clumsy and unusable but in reality feels extremely natural and efficient. It's also something I don't think will affect users who don't know about it - the real question should be how to inform them that it exists.

Having said this, one caveat is that it is implemented properly. That jquery version you linked was pretty easy to break and have it think the mouse was being held down when it's not. Care needs to be taken that the feature works flawlessly or you could cause big problems for users.

  • I made up the term checkbox strafing; be nice to know if it has another phrase. Mar 28, 2014 at 1:59
  • 1
    I don't care if there is... that name is perfect!
    – Jasta
    Mar 28, 2014 at 2:01
  • 1
    It's also something very suited to toggle switches like Photoshop layers where you are frequently turning something on and off but that actual change is trivial and completely non-destructive. It would be much less appropriate for something like 'tagging folders you wish to delete' or something with a similar level of risk.
    – Jasta
    Mar 28, 2014 at 2:05
  • 1
    There's a nice version of this here: tympanus.net/Development/MultiElementSelection Not sure if the 300ms pause adds to the experience though.
    – Jasta
    Apr 7, 2014 at 7:27
  • Yes, that is quite nice. I've not looked at the API, so I don't know if it can easily have a series of scrolling items. An advantage to a multi-select box is that it has built-in scrolling (and the options are spaced tightly, which saves screen real estate). Apr 7, 2014 at 9:00

A "drag to select" paradigm in a list box is not common. I have never seen this used, although apparently it does exist in Photoshop. A more common quick selection paradigm is clicking on one item, then holding down shift and clicking another item, which selects all items in between.

Users are not going to expect this drag to select behavior, and therefore they probably won't discover it if you implement it. I also think there is a danger that they might invoke it by accident, causing results other than what they intended. Also, this may cause issues with people using touch screens.

Unusual paradigms can work in applications like Photoshop--software for experts who are going to be using it hundreds of hours. It is ok for such a program to have a significant learning curve, with new behavior to learn, because the emphasis is on expert users being able to work quickly.

Most websites are not like this. They are used relatively infrequently by a broad user base that will not expect to have to learn how to use the interface. Features that they don't understand are likely to turn them away.

I would advise against this, unless you have an unusual case where your website will mainly be used by expert users.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.