Foros del Web » Programando para Internet » Jquery »

jQuery: problema de carga, solo funciona si uso alert()

Estas en el tema de jQuery: problema de carga, solo funciona si uso alert() en el foro de Jquery en Foros del Web. Hola, Tengo la siguiente instrucción jQuery en una página: Código: $(document).ready(function { $('#caja').html("Texto de prueba"); }); #caja es un div que existe en el código. ...
  #1 (permalink)  
Antiguo 01/10/2013, 05:55
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 22 años, 3 meses
Puntos: 17
jQuery: problema de carga, solo funciona si uso alert()

Hola,

Tengo la siguiente instrucción jQuery en una página:

Código:
$(document).ready(function {
    $('#caja').html("Texto de prueba");
});
#caja es un div que existe en el código.

Tengo este código al final de todo del documento, justo antes de </html>.

Tal como lo he puesto arriba, no hace nada ni muestra ningún error. #caja se queda con el texto que venía y no cambia a "Texto de prueba".

En cambio, si le pongo un alert antes, así:

Código:
$(document).ready(function {
    alert();
    $('#caja').html("Texto de prueba");
});
Muestra una alerta vacía, como es de esperar, y entonces sí me cambia el contenido de #caja a "Texto de prueba".

¿Se os ocurre qué puedo estar haciendo mal o alguna solución que pueda probar?


Gracias,
__________________
M a l d i t o F r i k i
  #2 (permalink)  
Antiguo 01/10/2013, 07:49
Avatar de jonni09lo
Colaborador
 
Fecha de Ingreso: septiembre-2011
Ubicación: Estigia
Mensajes: 1.471
Antigüedad: 12 años, 7 meses
Puntos: 397
Respuesta: jQuery: problema de carga, solo funciona si uso alert()

Hola, yo he experimentado ese comportamiento en algunos navegadores... así que si veo que empieza a molestar he hecho esto

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.     setTimeout(function(){
  3.         $('#caja').html("Texto de prueba");
  4.     }, 10);
  5. });

Es la única solución que he encontrado (incluso en las paginas que investigue también aconsejaban esta manera). Espero te sirva.

Saludos
__________________
Haz preguntas inteligentes-Como ser Hacker
No hacer preguntas por mensaje privado. No sólo no es inteligente sino que es egoísta.
  #3 (permalink)  
Antiguo 01/10/2013, 08:37
Colaborador
 
Fecha de Ingreso: septiembre-2013
Ubicación: España
Mensajes: 3.648
Antigüedad: 10 años, 7 meses
Puntos: 578
Respuesta: jQuery: problema de carga, solo funciona si uso alert()

También luedes usar body onload, la verdad es que hay lío entre ellos, pero cambiar el html justo después de que se carge el DOM puede generar problemas para algunos navegadores. Es buena idea hacer el timeout o simplemente llamarlo desde el atributo onload aunque no consigas los mismos efectos pero te dará menos guerra.

Saludos
  #4 (permalink)  
Antiguo 02/10/2013, 01:35
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 22 años, 3 meses
Puntos: 17
Respuesta: jQuery: problema de carga, solo funciona si uso alert()

Muchas gracias por vuestra ayuda, he logrado hacerlo funcionar cambiando el flujo de negocio :)
__________________
M a l d i t o F r i k i

Etiquetas: html, javascript
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 06:57.