I would separate the view (jQuery and DOM manipulation) from the state logic of the player.  These are separate concerns and will be much easier to test and and maintain if they are separate.