Checking for the existence of the `e.touches` property seems like a more natural way to determine whether this is a touch event. It should be present on all touch events and absent on all mouse events.