One way to do this is to create your own controller action, which is basically a duplication of the standard product view action.
It will require its own layout directives, which you can start off as purely an update handle for the existing view.
you simply need to place a router directive, into your extension config.xml
You will then create the corresponding controller into the controllers folder of your extension.
The contents will be something like this:
) . DS . 'ProductController.php');
class YOURNAMESPACE_MODULE_ProductController extends Mage_Catalog_ProductController
* Product view action
public function popupAction()
You'd have the following in a layout directive, specified by your extension:
<!-- examples on removing current layou directives -->
<!-- or using unsetChild, to remove a child block from a referenced area -->
<!-- an example of how to simply change the template of an existing block -->
Once you got the full view of the product in your popup, you can strip away all the display layer parts you don't need, purely using layout directives.
Possibly assign your own .phtml to blocks for more display control.
Doing t this way you really are using all core functionality to display your product, so will be stable. :)
You can call this like this:
/catalog/product/popup/id/883 (where 883 is my configurable product id)
There will most likely be a few sticky points (registry entry for 'current_product' comes to mind), but a potential idea for you.