Sounds like you're doing something similar to SoundCloud. Then think out of the box.
How about having the page stay in place, and load the new pages onto a container in the current page. That way, you keep the player running, while you "simulate" the navigation. While you're on that, you manipulate the browser's history so that the forward and back buttons still work.
You can use HistoryJS, which is a library that polyfills the History API for older browsers. You can use jQuery for all the AJAX stuff. You can hi-jack all links in the loaded pages to, instead of navigating away from the page, load the pages via AJAX.
// Listen for all link clicks inside the container
$('.container').on('click','a',function(event){
// Prevent the link from moving the page
event.preventDefault();
// This is the location
var href = this.href;
// Do AJAX here
// Manipulate history here
// Done!
});
Now for a simpler approach, why not use a pop-up instead? :D