Si en tu página haz puesto el código dentro de una tag <script type=»application/javascript»> (lo más correcto del mundo) el problema está en que hay muchos navegadores (entre ellos IE) que no reconocen ese MIME. Al no reconocerlo, ignoran toda la etiqueta <script> y por eso IE espera un objeto, porque ese objeto ha sido ignorado al declararse dentro de una etiqueta que no reconoce.
La solución es o sacar el atributo type o poner en el atributo type un MIME reconocido por todos los navegadores del mercado: «text/javascript».
El problema es que text/javascript, según IANA, está obsoleto, afirmando que un código JavaScript es una aplicación (application) que tiene que ser ejecutada y no un texto (text) que simplemente tiene que ser leído.
Pero si los navegadores no lo reconocen, tendremos que seguir usando <script type=»text/javascript»> hasta el día que lo hagan.