os dejo este código para que cuando tengamos a un visitante en la versión movil pueda ir a la versión web y no lo vuelva a redireccionar, esto lo he hecho creando una cookie, si el script lee la cookie te deja ver el contenido de la versión web, si no hay creada la cookie te redireccionará a la versión móvil. Tendremos que reemplazar lo siguiente del código puesto en Detectar moviles y redireccionar .
- Reemplazaremos:
- {
- window.location = "http://www.miwebmovil.com";
- }
- else
- {
- }
por el siguiente código:
- {
- if(readCookie("nombredelacookie")){
- } else{
- window.location = "http://www.miwebmovil.com"; }
- }
- else { }
Como podemos ver en este código, el que navega a través de un dispositivo móvil, antes de redireccionarlo comprobamos si esiste una cookie llamada "nombredelacookie"(recomiendo cambiar este nombre por uno personalizado), entonces le decimos que si esiste la cokie le mostramos esta página y si no esiste la cookie lo redireccionamos a la versión móvil.
tambien en la versión web pondremos el siguiente código:
- function readCookie(b){
- //creado por joason.com
- var e=b+"=";
- var a=document.cookie.split(";");
- for(var d=0;d<a.length;d++){
- var f=a[d];
- while(f.charAt(0)==" "){
- f=f.substring(1,f.length)
- }
- if(f.indexOf(e)==0){
- return f.substring(e.length,f.length)
- }
- }
- return null};
Cuando hayamos tenido una visita desde un dispositivo móvil, lo hayamos redireccionado a la versión móvil y queramos dar la opcción para volver a la versión web y crear la cookie que necesitamos para poder mostrar la versión web con un dispositivo móvil, colocamos el siguiente enlace en la versión móvil:
- <a href="http://www.miweb.com" title=" " onClick="javascript:irwebcompleta();">ir a versión web</a>
Para crear la cookie utilizaremos el siguiente código:
- function irwebcompleta(a){
- //creado por joason.com
- createCookie("nombredelacookie","accepted",a);
- }
- function createCookie(c,d,e){
- if(e){
- var b=new Date();
- b.setTime(b.getTime()+(e*6*60*60*1000));
- var a="; expires="+b.toGMTString()}
- else{
- var a=""
- }
- document.cookie=c+"="+d+a+"; path=/"
- }
este código debe ir donde esté la versión móvil.
Creo que ya está todo, cualquier duda o error de código, hacermelo saber.
Espero que os sea útil.
Un saludo...
Hola gracias ante todo por sacar tiempo para ayudar.
ResponderEliminarMi problema es que cuando quiero cambiar desde la web movil a la de escritorio la pagina queda en blanco. Igual se ve cuando entro desde el pc.
Gracias.
Hola Edwin, comprueba que tengas bien el código, de lo contrario te puede generar un bucle la web y por esto te la muestre en blanco.
EliminarUn saludo...
Hola gracias de antemano, ya usé este código, pero ahora no me detecta que entro desde un móvil y me manda directamente a la versión no móvi. Me la detecta bien hasta que agrego el código para leer la cookie, después de agregar ese código ya no me redirige a la versión movil aun después de haber borrado los cookies de mi navegador. Qué puedo estar haciendo mal?
ResponderEliminarHola Mario Rosado, al ponerlo por si solo funciona bien, el error lo dá al colocarlo con mas código, de todas formas ya lo he rectificado, copia y pega el código de arriba que ya tiene que irte a la perfección, pues lo tengo funcionando en varias web`s.
EliminarUn saludo...
Mismo problema, copiado y pegado tal cual... la version sin cookie funcionaba ok... esta no
EliminarEste comentario ha sido eliminado por el autor.
EliminarEspero no te MOLESTES Joason, bueno yo no le he meti estos codigos, tienen que funcionar, no lo dudo, pero yo lo e echo mas SIMPLE, para no tener estos problemas con los scrip por que cuando tiene muchos da CONFLICTO, bueno, entra a mi pagina y veras los resultados sin mucha complicacion, al final de la pagina mobil deje un link para la pagina web, hice copia de index con otro nombre, le quite el codigo que reconoce los exploradores mobiles a la copia, para que no me lo reconociera de nuevo, listo, he navegado del cel y no me da problema y asi como yo lo quiero, me quedo perfecto. suerte y Bendicion, Salu............
ResponderEliminarHola iguanacos.tk, todo comentario o aportación siempre es bien recibida y de agredecer.
EliminarCierto es que al meter mucho javascript puede darte dolor de cabeza, he hechado un visitado a tu web y he visto lo que comentas, eso que has hecho es una de las formas mas rapida de solucionarlo, en tu caso está bien porque usas frames, de lo contrario tendrias que duplicar toda la web y cada vez que modifiques una página tienes que modificar tambien su clon, lo cual, aunque de un poco mas de trabajo al pricipio, a la larga puede ser mejor con las cookies.
Saludos..
acorte el codigo con un else, esto discrimina la resolucion del dispositivo, espero que les sirva
ResponderEliminarif(readCookie("nombredelacookie")){
} else{
(screen.width <= 699) {
document.location = "http://www.miwebmovil.com"; }
}
else { }
function readCookie(b){
var e=b+"=";
var a=document.cookie.split(";");
for(var d=0;d<a.length;d++){
var f=a[d];
while(f.charAt(0)==" "){
f=f.substring(1,f.length)
}
if(f.indexOf(e)==0){
return f.substring(e.length,f.length)
}
return null};