Foros del Web » Programando para Internet » Javascript »

este codigo no me sirve en ie9

Estas en el tema de este codigo no me sirve en ie9 en el foro de Javascript en Foros del Web. Código: if (screen.width == 640) { document.write('<link rel="stylesheet" type="text/css" href="/css/600.css">'); } if (screen.width == 800) { document.write('<link rel="stylesheet" type="text/css" href="800.css">'); } if (screen.width == 1024) ...
  #1 (permalink)  
Antiguo 05/05/2011, 09:47
luismercado0209
Invitado
 
Mensajes: n/a
Puntos:
Exclamación este codigo no me sirve en ie9

Código:
if (screen.width == 640) { 
document.write('<link rel="stylesheet" type="text/css" href="/css/600.css">'); 
 
} 
if (screen.width == 800) { 
document.write('<link rel="stylesheet" type="text/css" href="800.css">'); 

} 
if (screen.width == 1024) { 
document.write('<link rel="stylesheet" type="text/css" href="1024.css">'); 
 
} 
if (screen.width == 1280) { 
document.write('<link rel="stylesheet" type="text/css" href="/css/1280.css">'); 
 
} 
if (screen.width == 1600) { 
document.write('<link rel="stylesheet" type="text/css" href="1600.css">'); 

}
es javascript, es para saber cual es la resolución de la pagina y según la resolución se le asigna una hoja de estilos diferente
pero no se sirver para IE9... ya lo probe con opera, mozila y chrome
  #2 (permalink)  
Antiguo 05/05/2011, 19:49
Avatar de Aijoona
Colaborador
 
Fecha de Ingreso: mayo-2011
Ubicación: Buenos Aires
Mensajes: 779
Antigüedad: 12 años, 11 meses
Puntos: 343
Respuesta: este codigo no me sirve en ie9

Programaticamente no es buena idea lo que estás haciendo.

En primer lugar esa lógica debería estar encapsulada en una función, y segundo, considerá que si la pantalla tiene un tamaño x, no va a tener un tamaño y, por lo cual una estructura de if-else anidados o diccionario seria mejor.

Ejemplo:

Código Javascript:
Ver original
  1. /**
  2.  * Agrega una hoja de estilo dependiendo
  3.  * del tamaño recibido
  4.  */
  5. function addScreenCSS(width) {
  6.     var cssDictionary, css;
  7.  
  8.     // Tus valores posibles con su
  9.     // respectiva ruta
  10.     cssDictionary = {
  11.         640: '/css/600.css',
  12.         800: '800.css',
  13.         1024: '1024.css',
  14.         1280: '/css/1280.css',
  15.         1600: '1600.css'
  16.     };
  17.  
  18.     // Asignamos un valor por defecto
  19.     if(!cssDictionary[width]) {
  20.         width = 1024;
  21.     }
  22.    
  23.     css = document.createElement("link");
  24.     css.setAttribute("rel", "stylesheet");
  25.     css.setAttribute("type", "text/css");
  26.     css.setAttribute("href", cssDictionary[width]);
  27.     document.getElementsByTagName("head")[0].appendChild(css);
  28. }
  29.  
  30. // Agregamos
  31. addScreenCSS(screen.width);
__________________
blog | @aijoona
  #3 (permalink)  
Antiguo 05/05/2011, 22:21
 
Fecha de Ingreso: noviembre-2005
Mensajes: 426
Antigüedad: 18 años, 5 meses
Puntos: 87
Respuesta: este codigo no me sirve en ie9

Cita:
Iniciado por Aijoona Ver Mensaje
Programaticamente no es buena idea lo que estás haciendo.

En primer lugar esa lógica debería estar encapsulada en una función, y segundo, considerá que si la pantalla tiene un tamaño x, no va a tener un tamaño y, por lo cual una estructura de if-else anidados o diccionario seria mejor.

Ejemplo:

Código Javascript:
Ver original
  1. /**
  2.  * Agrega una hoja de estilo dependiendo
  3.  * del tamaño recibido
  4.  */
  5. function addScreenCSS(width) {
  6.     var cssDictionary, css;
  7.  
  8.     // Tus valores posibles con su
  9.     // respectiva ruta
  10.     cssDictionary = {
  11.         640: '/css/600.css',
  12.         800: '800.css',
  13.         1024: '1024.css',
  14.         1280: '/css/1280.css',
  15.         1600: '1600.css'
  16.     };
  17.  
  18.     // Asignamos un valor por defecto
  19.     if(!cssDictionary[width]) {
  20.         width = 1024;
  21.     }
  22.    
  23.     css = document.createElement("link");
  24.     css.setAttribute("rel", "stylesheet");
  25.     css.setAttribute("type", "text/css");
  26.     css.setAttribute("href", cssDictionary[width]);
  27.     document.getElementsByTagName("head")[0].appendChild(css);
  28. }
  29.  
  30. // Agregamos
  31. addScreenCSS(screen.width);
Absolutamente toda la razón.

Etiquetas: ie9
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:05.