2009-11-17 19 views
21

Antecedentes: estoy trabajando en un sitio web de comercio electrónico. Era mi intención original agregar JavaScript encima de las páginas html normales, de modo que los usuarios con soporte JS obtuvieran los beneficios adicionales, pero los usuarios sin este podrían usar los formularios html básicos para agregar cosas a su carrito, buscar, etc.Desarrollo web: ¿Todavía tenemos que admitir usuarios que no sean javascript?

me he encontrado con algunas situaciones, sin embargo, donde no sólo no es una sana manerapara implementar ciertas funcionalidades de una manera no JavaScript.

Un ejemplo son las selecciones de atributo encadenadas en las páginas del producto (donde las elecciones de color cambian según el tamaño elegido, porque no todos los tamaños vienen en todos los colores). Incluso si no usara AJAX, aún requeriría JavaScript para cambiar dinámicamente las opciones.

Las únicas alternativas a JavaScript que se me ocurre sería:

A. Tener un complemento a la cesta "asistente" donde tiene que pasar a través de cada atributo elección en una página separada (puaj!)

B. Ponga cada variación de tamaño/color como un producto separado (y obligue al cliente a vadear la página de categorías para encontrar el tamaño de color que desee)

... Y si bien ambos de los anteriores funciona independientemente de si el usuario tiene JavaScript activado o no, ambos castigan a los usuarios de JavaScript mediante la reestructuración de la página y forci usándolos para usar una interfaz diseñada para el mínimo común denominador.

Así que la pregunta es, ya que JavaScript ha tenido un papel mucho más importante en el desarrollo web que hace unos años, y el patrón de diseño para una aplicación/sitio AJAX/JS es tan diferente ahora que un 'clásico' patrón de diseño web, ¿aún nos salimos de nuestro camino para apoyar a los usuarios que no son JS? ¿O decimos, "al diablo con usted! Actualice su navegador, active JavaScript o vaya de compras a otro lugar"?

Estaría interesado en ver la opinión de otros desarrolladores sobre esto.

Respuesta

15

Creo que realmente depende de su público objetivo. Trabajo para una compañía que tiene varios tipos de sitios web, algunos están enfocados en su tipo de avg o chica que está interesada en los juegos. Y nuestras estadísticas nos muestran que la gran mayoría de estas personas tienen javascript habilitado.

También tenemos un sitio que se centra en los desarrolladores, y muchos de estos desarrolladores no permitirán que JavaScript se ejecute en un sitio a menos que confíen en él. He visto que entre un 20% y un 30% de los navegadores de ese sitio no ejecutan javascript.

Así que es muy subjetivo.

En mi humilde opinión, es muy razonable usar grandes cantidades de de buen gusto javascript para mejorar una experiencia de otro modo mundano. Sin embargo, también creo que, cuando sea posible, debería degradarse con gracia. Esta forma de degradación no es demasiado difícil de lograr (en la mayoría de los casos) siempre que lo consideres cuando estás diseñando cosas.

+6

Ser capaz de decirle a alguien que tiene un problema que "desactive javascript, siga las instrucciones, y simplemente funcionará" es una gran solución temporal para que puedan hacer sus cosas y realmente puede solucionar el problema sin "el ¡todo el sitio está caído! ¡toda la organización está paralizada! " Entonces: graciosa degradación o busto. –

+1

Acepto que es muy importante, por supuesto, con algunas aplicaciones, un requisito de javascript solo hace que algunas cosas sean más posibles. Me gusta google maps. –

+0

Estoy completamente de acuerdo. La mejor manera de abordar algo como esto es usar javascript discreto. –

4

Si puede excluir a los usuarios que no utilizan Javascript, por lo que este va a ser algunos de los dispositivos móviles, o el verdadero paranoico, así como los usuarios de lince, y cualesquiera usuarios que no utilizan la versión de JavaScript se escribe para.

Si está dispuesto a hacerlo, le sugiero que tenga una página html estática que contenga algún mensaje de que se requiere javascript.

Cuando su javascript está cargado, y el árbol DOM está listo, entonces puede reemplazar este mensaje, por lo que nunca se ve, con el resto de la página web.

Pero, es posible que desee ver cómo puede obtener la funcionalidad, incluso si es limitada, para navegadores que no sean javascript.

Por ejemplo, para los colores que puede utilizar un menú desplegable horizontal que puede trabajar en todos, pero más viejos navegadores IE: http://www.alistapart.com/articles/horizdropdowns/

Si desea utilizar javascript para hacer su vida más simple en que puede haber una razón pobre, pero , si estás haciendo una aplicación web de Photoshop, necesitarás javascript.

NOTA Sugeriría que funcione con y sin javascript, ya que un sitio de comercio electrónico no querrá excluir a ningún cliente, supongo.

2

Mucho de esto depende de su audiencia. Como dijiste hace años, JavaScript se usaba de una manera diferente, y hasta como una molestia. Ahora, con AJAX y una mayor funcionalidad, es obligatorio, y la mayoría de las personas lo tienen activado.

Se podría decir que alguien con Javascript deshabilitado se utiliza para cosas que no funcionan con bastante regularidad, y una pequeña minoría.

Sin embargo, si está construyendo un sitio que será frecuentado por computadoras antiguas o personas con ancho de banda limitado (como el tráfico extranjero), es posible que desee considerar trabajar con ellos. Además, un sitio muy visitado por los navegadores móviles podría ser otro en el que centrarse.

Eche un vistazo a sus análisis y vea cuál es el uso actual, y haga un perfil de su audiencia para descubrirlo realmente.

2

La mejor respuesta dependerá de una simple comparación: Estime el dinero extra que gastará creando el sitio alternativo que no sea javascript. Estime el dinero que ganará vendiendo productos a sus clientes no habilitados para javascript. Comparar. Si es una gran tienda, entonces obtener las ventas de ese último 2% o 10% de los usuarios puede valer la pena. Si solo eres un chico, tal vez tengas formas más rentables de gastar tu tiempo.

5

Creo que el soporte de usuarios que no sean Javascript es absolutamente necesario para cualquier sitio que tenga como objetivo algún tipo de grupo objetivo "normal" (es decir, no jugadores o expertos en tecnología).

  • Hay un número cada vez mayor de dispositivos móviles que acceden e intentan analizar el contenido normal.
  • Muchas redes corporativas todavía bloquean las secuencias de comandos por razones de seguridad; tampoco desea perder las compras ocasionales de empleados del trabajo.
  • Javascript tiende a atornillar cualquier intento de accesibilidad. En mi opinión, crear sitios que sean lo más accesibles posible es un servicio a nuestros semejantes.

No estoy diciendo que soy lirio blanco en esto. I Odio funcionalidad de replicación que solo logré lograr en mi framework JS en HTML estático, o haciendo que se degrade graciosamente. Pero creo que todavía realmente, realmente es una necesidad, y no simplemente una cuestión de rentabilidad. Esto es algo que vale la pena invertir un poco más, o poner un poco de trabajo no remunerado.

+1

La accesibilidad también es un servicio para nuestros compañeros robots, p. Google. –

13

Cuando se trata de cosas como el Ajax, o cualquier javascript para el caso, creo que lo mejor es:

Plan de Ajax desde el principio; Implementar Ajax al final-Jeremy Keith

Esto significa Intercept enlaces y formas (secuestro) usando (discreta) de JavaScript hacer que su código se degradan bien para aquellos que no tengan habilitado JavaScript. Si desea mostrar un control deslizante de lujo, conviértalo en un enlace que le indique al servidor que muestre el div cuando vuelva a cargar la página y le diga a su javascript que haga algo diferente cuando se haga clic en el enlace.

Estas ideas son su apuesta más segura para un sitio web funcional pero divertido.

0

Si bien parece lógico, progresivo, más simple y más eficiente requerir Javascript para un sitio de comercio electrónico, debe preguntarse si está dispuesto a renunciar a un x por ciento del negocio generado por usuarios que no son de Javascript. y ponderarlo con los menores costos de desarrollo.

El porcentaje de pérdidas de negocios probablemente no sea el porcentaje de usuarios que no son de Javascript, porque un porcentaje menor de visitantes que no son de JavaScript es probable que compren bienes son servicios. El porcentaje de negocios perdidos probablemente será algo menor que el porcentaje de usuarios que no usan Javascript.

1

En teoría, sí; pero en la práctica, no.

En teoría, está en el espíritu de la web admitir hardware y software con una gama de capacidades y configuraciones, escalando las características del sitio de forma adecuada.

En la práctica, incluso los navegadores móviles convergen en el punto clave que ocupan los principales navegadores de escritorio actuales. Los usuarios en el exterior normalmente pueden cambiar a un navegador o dispositivo alternativo en caso de necesidad.

14

El usuario más importante que no es javascript es Google. No olvides eso.

+0

+1 http://www.peterbe.com/plog/google-is-blind –

+0

¿Qué quieres decir exactamente? ¿Es google un usuario? ':-)' – Shafizadeh

0

centrarse en hacer que la función avanzada para la gran audiencia es mejor que pasar el tiempo para encontrar trabajo para los usuarios que no utilizan JavaScript y los que usan una plataforma obsoleta.

0

En mi opinión hay 2 cosas que tienen que considerar cuando se piensa acerca del uso de JavaScript en un sitio web:

  • es Google sigue siendo capaz de rastrear todo el contenido
  • Si algunas partes del sitio web no son utilizables sin JavaScript, haga un mensaje muy claro para los usuarios que no usan JavaScript, por qué su sitio no funciona para ellos
2

Encontré esta publicación interesante y basada en hechos, podría ayudar. Why we should support users without Javascript. Lo que sigue es un resumen:

  1. Algunas personas optan por convertir JS fuera.
  2. JS falla ocasionalmente, HTML/CSS no lo hace.
  3. JS está diseñado y debería ser la guinda del pastel, no un trabajo de parche para HTML/CSS malo.
+0

+1 Publicación impresionante, resume todo lo que he intentado poner en palabras sólidas durante años. Se agregó una recapitulación TL; DR de la publicación a su respuesta; siéntase libre de editar o whatev. –

0

Creo que necesitamos para apoyar a los usuarios no javascript nuevo.

Hay usuarios que me incluyen a mí que no deshabilita JS para ningún tipo de paranoia, pero debido a que algunos sitios son tan pesados ​​hoy en día que mi navegador se ralentiza hasta detenerse. Y esto está empeorando recientemente, así que espero que más usuarios hagan esto eventualmente. Quería recuperar mi rendimiento, así que instalé complementos de navegador que me permitieron habilitar selectivamente solo los scripts necesarios en el sitio. Así que puedo tener una docena de pestañas abiertas nuevamente sin problemas de rendimiento.

Cuestiones relacionadas