attributes
должны поддерживаться всеми браузерами. Может быть, это не работает, потому что вы предполагаете, что это функция, и пытаетесь вызвать ее как единое целое. Это на самом деле массив. Так что это должно сделать:
alert(document.getElementsByTagName('body')[0].attributes.length)
(Обратите внимание, что нет ()
после .attributes
.)
Ой, я только что увидел, что IE действительно несовместим здесь (не могу проверить, я на Linux). Извините за это.