En Opera no funciona porque Opera también acepta document.all, en un intento por funcionar en programas javascript mal hechos
Pero claro, acepta document.all pero no todas las "particularidades" de IE.
Para estos casos, siempre es mejor preguntar (con el if, me refiero) por la propiedad específica que necesitás (como has hecho al final) en vez de usar el if con algo tan genérico como document.all.
Qué bueno que hayas encontrado la solución por ti misma.
Saludos.