It seems like the tag name is often (always?) in upper case, so I'd rather leave the toLowerCase() in.

Perhaps I should use the constructor check, although it's worth noting that when potentially dealing with frames you need to get the HTMLBodyElement constructor for the current frame (learned that one the hard way).