henry
My mouse's scrollwheel stopped working today, so I took my mouse apart and removed a bunch of cat hair from the wheel mechanism.
Apparently it detects wheel movement by shining a little light through spokes in the wheel (yep, it has spokes!), and when that's interrupted by something, it knows there's movement.
Thing is on it's last legs though, you have to really press down hard to drag things, normally it just fires a mouseup event after half a second.
Maybe I should spring for a Razer next time, I like the idea of a mouse people have put effort into designing.