It is better implemented in the latest browsers getElementsByClassName, and therefore, when you use the jquerys class selector, it immediately returns to this method and, consequently, to the difference in performance and gain.
When you are preceded by a tag selector, first jquery should process your selector and then break it into different markers, and then it will start searching for the control, not sure which order is here, regardless of whether all elements with className are fetched first, and then an extra selector is added, or vice versa, but I'm sure you can explore it by looking at the jquery source code ..
, , , , - , , , . ?:/