2011-05-27 31 views
36

Comencé a jugar con pjax, ya que deseo proporcionar una experiencia fluida y rápida para mis usuarios sin muchas solicitudes innecesarias de HTTP y repetidas representaciones de HTML sin modificar.¿Es pjax el camino a seguir para la navegación "fluida"?

Lo tengo funcionando bastante bien en mi sitio, y debo decir que fue sorprendentemente fácil de poner en funcionamiento, teniendo en cuenta la diferencia que hace la experiencia.

Sin embargo, estoy viendo muy poco apoyo para pjax - tanto en StackOverflow, y en la web en general (unos rendimientos google search muchos resultados en la parte superior totallyunrelated al desarrollo web).

Pero como estoy impresionado estoy con eso, incluso si todavía no es compatible, todavía puedo usarlo. Mi preocupación principal es encontrarme con grandes problemas más adelante cuando ya he invertido mi código sin mucho soporte. Así que quería asegurarme de que no había algo más allá.

¿Existen alternativas para implementar la misma funcionalidad que proporciona pjax que yo no conozco? ¿O es tan nuevo que mucha gente aún no lo sabe? ¿O es solo una implementación mala/problemática?

+2

con firefox 3.6.17 Aparece el mensaje 'Lo siento, su navegador no admite pjax :(' y leyendo la discusión de pjax en SO, IE * quizás * tampoco lo admite – yitwail

Respuesta

8

http://caniuse.com/#search=history le dará una indicación de lo que admite la versión actual de pjax.

El código adicional que olfatea la solicitud de encabezado PJAX también podría reaccionar al navegador y degradarse muy bien para otros navegadores.

http://forum.kohanaframework.org/discussion/8869/kopjax-simplistic-pjax-jquery-ajax-module/p1#Comment_60090 es una buena lista de opciones alternativas.

Si no te importa perder soporte para otros navegadores o hacer cambios para hacerlo, entonces el único inconveniente de PJAX que puedo ver es la necesidad de tener 1 fragmento/parcial para actualizar.

+16

"The El código adicional que olfatea la solicitud de encabezado PJAX también podría reaccionar al navegador y degradarse muy bien para otros navegadores. "- ¿Por qué tendrías que hacer esto? El encabezado PJAX solo se envía en solicitudes PJAX, que solo ocurre si el navegador admite PJAX . – callum

1

También recibo mensajes de "Lo siento, no compatible".

A juzgar por los problemas de soporte del navegador señalados aquí, diría que si bien el pjax suena interesante, probablemente todavía no esté listo para el horario estelar.

No funciona en Firefox 3.6, pero ese es un problema menor ya que FF4 ya está disponible. Pero en el futuro previsible, tu bloqueador realmente grande es IE. Si el producto ni siquiera es compatible con IE9, entonces realmente no te estás haciendo ningún favor al usarlo.

Pero con la velocidad de cambio en el mundo del navegador en este momento, esto mejorará, así que siéntete libre de experimentar con él para implementarlo en una fecha posterior. No me sorprendería si esta respuesta es completamente diferente dentro de un año. Pero, por el momento, diría que eso es todo: una curiosidad experimental.

+0

Gracias. En realidad, era consciente de la falta de soporte para IE. Mi pensamiento es el peor de los casos, los usuarios de IE tendrán la misma experiencia que si no usara pjax. Todos los demás usuarios (FF4, Chrome, Safari)) tendrá una experiencia mucho más fluida. –

2

Estoy con Jerad - basado en el uso de the demo en IE, parece degradarse con gracia.

Si puede vivir con algunos usuarios que no obtienen la experiencia AJAX, no veo nada que perder.

0

Pjax es una gran solución y se degrada con gracia. Si quieres una solución más profunda, puedes usar los backbone-rails pero es un poco más trabajo. Creo que es más compatible con los navegadores más antiguos, ya que no depende del estado de inserción ...

4

Me encontré con problemas al tratar de evitar la limitación de actualización parcial de 1 contenedor, así que armé una alternativa simple que se degrada graciosamente. djax logra el mismo resultado que pjax, excepto que es indiferente a los cambios de diseño entre páginas, y le permite actualizar tantos parciales en la página como desee.

Cuestiones relacionadas