Foros del Web » Programando para Internet » Javascript »

[Solucionado] Problemas al separar caracteres de una cadena en IE

Estas en el tema de [Solucionado] Problemas al separar caracteres de una cadena en IE en el foro de Javascript en Foros del Web. Hola amigos. Tengo un problemilla y es que me encuentro desarrollando una web con un menú en el que las letras de cada opción van ...
  #1 (permalink)  
Antiguo 12/08/2010, 11:16
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Exclamación [Solucionado] Problemas al separar caracteres de una cadena en IE

Hola amigos.

Tengo un problemilla y es que me encuentro desarrollando una web con un menú en el que las letras de cada opción van apareciendo. Funciona correctamente en firefox , konqueror, opera, chromium... todo probado en linux.

Pero me dio por abrir la virtualbox con WinXP y probarlo en IE y resulta que me da undefined en cada caracter, es decir, no pilla bien cadena[letra] . Os adjunto el código a ver cómo se puede solucionar para internet explotter.

Código Javascript:
Ver original
  1. var cadena = "Quiero separar esto por letras";
  2. var caden="  ";
  3.        
  4.         for(letra=0, tiempo=50; letra<cadena.length; letra++, tiempo+=50) {
  5.    
  6.             caden+=cadena[letra];
  7.    
  8.             setTimeout("insertarEnCapa('"+caden+"', '"+capa+"')", tiempo);
  9.    
  10.         }

No funciona en internet explorer porque al recorrerlo no detecta cada caracter como un array, cómo lo convierto?


SAludos y mil gracias.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.

Última edición por CHuLoSoY; 12/08/2010 a las 13:46 Razón: Solucionado
  #2 (permalink)  
Antiguo 12/08/2010, 11:41
Avatar de GAST0N  
Fecha de Ingreso: agosto-2010
Ubicación: Buenos Aires
Mensajes: 680
Antigüedad: 13 años, 8 meses
Puntos: 64
Respuesta: Problemas al separar caracteres de una cadena en IE

Cita:
Iniciado por CHuLoSoY Ver Mensaje
Hola amigos.

Tengo un problemilla y es que me encuentro desarrollando una web con un menú en el que las letras de cada opción van apareciendo. Funciona correctamente en firefox , konqueror, opera, chromium... todo probado en linux.

Pero me dio por abrir la virtualbox con WinXP y probarlo en IE y resulta que me da undefined en cada caracter, es decir, no pilla bien cadena[letra] . Os adjunto el código a ver cómo se puede solucionar para internet explotter.

Código Javascript:
Ver original
  1. var cadena = "Quiero separar esto por letras";
  2. var caden="&nbsp; ";
  3.        
  4.         for(letra=0, tiempo=50; letra<cadena.length; letra++, tiempo+=50) {
  5.    
  6.             caden+=cadena[letra];
  7.    
  8.             setTimeout("insertarEnCapa('"+caden+"', '"+capa+"')", tiempo);
  9.    
  10.         }

No funciona en internet explorer porque al recorrerlo no detecta cada caracter como un array, cómo lo convierto?


SAludos y mil gracias.
Yo creo que hay un error entre las comillas , podrias decir que error te da IE ??
  #3 (permalink)  
Antiguo 12/08/2010, 11:44
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: Problemas al separar caracteres de una cadena en IE

No no, el ie funciona bien todo excepto las letras.

Cuando en el resto de navegadores el efecto que hace al ponerse encima de un elemento de menú es que vayan apareciendo las letras:

Cita:
I
In
Ini
Inic
Inici
Inicio
Y el javascript se para, en internet explorer lo que hace es decir que cada letra no existe:

Cita:
undefined
undefinedundefined
undefinedundefinedundefined
undefinedundefinedundefinedundefined
undefinedundefinedundefinedundefinedundefined
undefinedundefinedundefinedundefinedundefinedundef ined
Por tanto, cómo puedo hacer para que IE me reconozca cada caracter de la cadena??? El resto de navegadores me la detectan tal cual (cadena[posicion]) y funciona perfectamente.

Saludos y gracias.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #4 (permalink)  
Antiguo 12/08/2010, 12:03
 
Fecha de Ingreso: marzo-2008
Ubicación: Guatemala
Mensajes: 76
Antigüedad: 16 años
Puntos: 0
Respuesta: Problemas al separar caracteres de una cadena en IE

bueno me parece...

inicias con una cadena de texto que no es precisamente un array (aunque corra en otros navegadores), intenta mejor a convertir la cadena en un array directamente, ya sea usando alguna regexp o usando substring y verás que anda
  #5 (permalink)  
Antiguo 12/08/2010, 13:45
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 22 años, 2 meses
Puntos: 29
Respuesta: Problemas al separar caracteres de una cadena en IE

Pues nada, al final convertí la cadena en array y listo. No sabía que en IE no se podían hacer estas cosas, tendré que convertir varias páginas mías xD

Por lo pronto pongo el código por si a alguien le hace falta.
Código Javascript:
Ver original
  1. var cadenan = "Quiero separar esto por letras";
  2. var cadena=new Array();
  3.  
  4.         for(k=0; k<cadenan.length; k++) {
  5.             cadena[k]=cadenan.substring(k, k+1);
  6.         }
  7.    
  8.     var caden="&nbsp;";
  9.        
  10.         for(letra=0, tiempo=50; letra<cadena.length; letra++, tiempo+=50) {
  11.    
  12.             caden+=cadena[letra];
  13.    
  14.             setTimeout("insertarEnCapa('"+caden+"', '"+capa+"')", tiempo);
  15.    
  16.         }
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.

Etiquetas: caracteres, explorer, internet, cadenas
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 07:21.