/ / ¿Cómo redirigir si javaScript está deshabilitado? - JavaScript, redirigir

¿Cómo redirigir si javaScript está deshabilitado? - JavaScript, redirigir

Tengo un sitio que se basa en gran medida en JavaScript. Creé un sitio de réplica, que tiene todos los JS, así como todos los elementos que requieren la eliminación de JS. ¿Cuál es una forma buena y fácil de redirigir a los usuarios al sitio de réplica si no tienen javaScript habilitado?

Intenté esto, pero no me parece muy bueno:

<noscript>
<meta http-equiv="refresh" content="0; URL=nojs/index.php">
</noscript>

También intenté poner el encabezado-redireccionamiento en la etiqueta de noscript, pero no funcionó.

Respuestas

21 para la respuesta № 1

Haga que la versión sin JavaScript del sitio sea la predeterminada. Incluya un pequeño script allí para redirigir al sitio del script.

O, abandona el uso de una redirección por completo y ve con Mejora progresiva


75 para la respuesta № 2
<noscript>
<p>This site is best viewed with Javascript. If you are unable to turn on Javascript, please use this <a href="http://sitewithoutjavascript.com">site</a>.</p>
</noscript>

Algunas personas deshabilitan deliberadamente Javascript, y es posible que desee darles la oportunidad de activarlas antes de redirigirlas.


44 para la respuesta № 3

Usa este código que se me ocurrió:

<noscript>
<style>html{display:none;}</style>
<meta http-equiv="refresh" content="0.0;url=nojs/index.php">
</noscript>

Utiliza el estilo para bloquear lo que hay en la página, entoncesla gente no notará nada antes de redireccionar. Lo único que me molesta es que quiero algo mejor que la meta actualización, ya que puede bloquearse en algunos navegadores como IE. Un encabezado de PHP no es realmente una solución, ya que no se puede ponlo en una noscript etiqueta ya que simplemente lo ignorará y lo escribirá de inmediato.


15 para la respuesta № 4

¿Cuál es tu definición de "no muy bueno"?

Todos mis sitios utilizan:

<noscript>
<meta http-equiv="refresh" content="0; url=http://www.sadtrombone.com/" />
</noscript>

6 para la respuesta № 5

No haría la redirección del lado del cliente, ya que podría parecer molesto para el usuario. En su lugar, lo que haría sería usar <noscript> para mostrar el contenido de este sitio sin JS en la misma página. Puede ser más trabajo, pero definitivamente sería una experiencia más suave.


2 para la respuesta № 6

Se me ocurrió una solución mejor que tener que redireccionar al usuario, ya que la meta-actualización se puede desactivar en IE.

Pon esto en la CABEZA:

<style>div#body{display:none;}</style>

Pon esto en el CUERPO:

<noscript>NO JAVASCRIPT CONTENT HERE</noscript>

<noscript><div id="body"></noscript>JAVASCRIPT CONTENT HERE<noscript></div></noscript>

De esa manera las etiquetas son donde están destinadas a estar.