Source code for bookmarklet Show Heading Levels.
javascript:
(function(){
var rp = 0;
function nh(dt, hl)
{
h = dt.getElementsByTagName(hl);
for (var k = 0; k < h.length; ++k) {
var te = dt.createTextNode( "[" + hl + "] " );
h[k].insertBefore( te, h[k].firstChild );
++rp;
}
}
function eD(dt)
{
for (var k = 1; k < 9; ++k) {
nh(dt, "H" + k);
}
alert("Headings numbered: " + rp);
}
// "dIr" == "documentIterator"
function dIr(dt, f) {
function ifsr( fs )
{
for (var i = 0; i < fs.length; ++i)
{
try {
dIr(fs[i].contentDocument, fs[i]); // recursive call
}
catch (e) {
alert(e || "Unspecified error");
}
}
}
if (dt == null) {return;}
eD(dt, f);
ifsr( dt.getElementsByTagName("FRAME") );
ifsr( dt.getElementsByTagName("IFRAME") );
}
// iterate through all documents
dIr(document, null);
}());