Window Print

Requirements

Requires CC Common Code

JavaScript

// HTML-generating code to be placed in <body>, wherever the history table is to be generated:

function windowprint(level,w) {
   if (w.length==0) {
      return Htr(Htd(
         level,w.length,w.document.title,w.location.href
         ));
      }
   var x="";
   for (var i=0; i<w.length; i++) {
      x = x + windowprint(eval(level+1),w.frames[i])
      }
   return Htr(Htd(
      level,w.length,w.document.title,w.location.href)) + x; 
   }

document.write(
   Htable("border=1 cellspacing=0 cellpadding=4",
      Htr(Htd(
         "<b>Level</b>","<b>Children</b>","<b>Title</b>","<b>Locataion</b>"
         )),
      windowprint(0,top)
      )
   )

Results

The result looks like this:
To see how this script works inside a frames page, click here.

To bust out of frames, click here.