You could make use of the built-in popup class in OpenLayers, doing something like this:
var poSize = new OpenLayers.Size(<Width>, <Height>);
var poPrompt = new OpenLayers.Popup('name',
poPrompt.keepInMap = true;
//Make popup static so it doesn't pan with map.
poPrompt.div.style.position = 'fixed';
var llPixel = new OpenLayers.Pixel(<left>, <top>);
If you are using the (deprecated) Marker layer type, you would need to trigger this code from some sort of click handler on the layer. However, it is recommended that you use a Vector layer type for markers now. You could add a select control to the layer to trigger the popup.
It would be nice if you could use a popup event to trigger an ajax callback to retrieve content, but the popup class doesn't seem to have any useful events that could be used.