solutions:
1) Iframe - Like you said. Have webpage that just displays details. When you click on the title from the main calendar page it will load up a different detail into the iframe.
2) AJAX - Similar to above except that you would use a div instead of an iframe. Have webpage that just displays details in some format (json?). Your ajax package will load that info into Javascript for you. You then overwrite the data into the waiting div. You will be replacing data inside your existing html structure as opposed to re-rendering all the html of the details portion.
3) JS Only - Have the main page load all the details for all events on the page in it's own div. Have them hidden with CSS (display:none). When you click on the title it rehides any visible divs, then shows only the div belonging to the title.
2 & 3 require more knowledge of Javascript. 3 loads alot of data the user may never see but is more simple than 2 in concept.