Document.all sigue vivo… lamentablemente

Es ironico que cuando se pide a los usuarios abandonar y actualizar su Internet Explorer 6, ya que como comenta uno de los responsables de la remodelacion de Libertad Digital dicho browser impide el visionado correcto de los sites modernos, aun debamos de toparnos con sites programados con tecnologias antiguas y no compatibles.

Todo empezo hace unos dias, tenia que efectuar una compra por Internet, y como parte final del pago, debia validar mi tarjeta de credito mediante una pasarela conectada con mi banco, todo bien, pero al llegar a la pantalla de validacion el boton para hacer el paso siguiente no funcionaba, malo malo, se veia el boton pero ignoraba mis clics, entonces procedi a ver los mensajes que tenia la consola del Firefox, y ahi estaba, el sitio hacia una llamada en JavaScript al temido document.all, como se puede ver:

Para quien no lo recuerda, document.all fue una especie de “llave maestra” que se introdujo en Internet Explorer 3, a fin de “facilitar” de manera directa un acceso directo a los diversos elementos DOM que conforman una pagina HTML (especialmente los elementos de un formulario), esta caracteristica junto con otras como los behaviours no fueron implementadas por los demas browsers, lo que me hizo en algunos proyectos retocar bastante JavaScript a fin de evitar que la pagina solo fuera usable en las versiones de Internet Explorer.

Es que soluciones hay, y en su momento la solucion era usar un acceso totalmente cualificado como “form1.combo1….”, pero la solucion standard soportada tanto por Opera, Firefox e Internet Explorer es getElementById, por lo que sorprende que algo tan conocido no sea usado en un site de tanta importancia como una pasarela de pago electronico, esta claro que al final tuve que deshacer todo lo avanzado y utilizar una sesion de IE 8 para poder hacer la operacion, con la consiguiente perdida de mi tiempo como usuario, todo por una mala decision de los programadores de 4B que optaron por usar algo no standard.

Y claro, no habra quien me diga que si me quejo por esto y no reclamo a los fabricantes como en el caso de ShowModalWindow por no incluir dicha funcionalidad, en vez de quejarme con los progamadores del sitio, muy simple: en el caso de ShowModalWindow el problema era (ya no, pues Firefox 3 ya soporta ShowModalWindow 🙂 )que habia una funcionalidad de IExplorer sin ningun mecanismo alterno de implementacion en los otros browsers, mientras que en el caso de document.all se trata del hecho de usar una manera no estandar de acceder a un recurso, ya existiendo mecanismos comunes y compatibles para lograr el resultado.

Espero que cada vez sean menos los desarrolladores web que hace uso del infame document.all.