Contenido

Problemas con ajax y quirksmode

9 may

+ 6

Hace unos meses levhita nos deleitó con un post explicativo sobre “como hacer páginas válidas y no morir en el intento” donde explicaba como usar un código válido y estandard para conseguir un código más profesional. En él explicaba lo que es el Quirksmode y el Strictmode.

Quirksmode vs. StrictMode

Para que el código escrito de acuerdo a la documentación, funcione adecuadamente, los navegadores deben interpretarlo como lo dice la W3C y para eso tienes que hacer que los navegadores funcionen en modo estricto.

Para hacer esto basta con que escribas una cabecera válida, como esta (justo al inicio de tu documento, antes que cualquier cosa habida y por haber, lo primerito primerisimo inicial de todo tu código):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//ES"

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns=" http://www.w3.org/1999/xhtml" lang="en" xml:lang="es">

De esta manera el navegador sabrá que debe de interpretar el código como lo dice la W3C, asegurándote (dentro de lo posible) que funcione justo como lo leíste en la documentación.

Y es que si no haces esto, el navegador asumirá que el documento esta escrito como en la era antes de los estándares y por lo tanto se pondrá en Quirksmode(modo raro), que es más o menos la forma en la que Internet Explorer 4.0 interpretaría tu página. Dejando inutilizado todo lo aprendido en la documentación de la W3C. []

Sabiendo esto podemos seguir con esta lista de limitaciones de ajax sobre quirksmode, en los distintos navegadores.

Navegador básico en quirksmode y limitaciones

  1. XMLHttpRequest no permite acceder servidores remotos.
  2. Multiples Ajax Requests no se ejecutan en orden.
  3. Las respuestas asincronas de XMLHTTP no llegan en orden.
  4. XMLHTTPRequest no requiere que se use XML.
  5. Ajax usa UTF-8
  6. Ajax requests son url encodeadas.
  7. XMLHTTPRequest no permite enviar ficheros.

Firefox en Quirksmode

  1. Peticiones XMLHTTP sincronas están protegidas.

IE en Quirksmode

  1. XMLHTTPRequest no se puede reusar.
  2. IE no usa imagenes cacheadas cuando Javascript inserta HTML con imagenes.
  3. Las referencias circulares causan que la memoria de IE se desborde.
  4. Evita el cacheo agresivo en IE.
  5. IE corrupta los ficheros javascript comprimidos por gzip.
  6. No cachea los ficheros javascript comprimidos con gzip.

Incluso el autor, ha creado una página del wiki para ir añadiendo otras nuevas que se vayan detectando.

Via Ajaxian

ajax, quirksmode, strictmode, estandard

Comentar

#

Me reservo el derecho de eliminar y/o modificar los comentarios que contengan lenguaje inapropiado, spam u otras conductas no apropiadas en una comunidad civilizada. Si tu comentario no aparece, puede ser que akismet lo haya capturado, cada día lo reviso y lo coloco en su lugar. Siento las molestias.