$ zwraca obiekt jQuery, którego API jest opisane w dokumentacji. Nie dostajesz tutaj surowego elementu z DOM, stąd zwykła podmiana document.querySelector na $ nie zadziała – obiekt jQuery nie ma choćby addEventListener, a swój odpowiednik itd.
API jQuery pozwala m.in. na łańcuchowanie wywołań ($( 'selektor' ).on( 'click, clickHandler ).on( 'dblclick', dblClickHandler );), czego DOM nie zezwala. Ogólnie API jQuery jest IMO przyjemniejsze do pracy niż czystym DOM.