Foros del Web » Programando para Internet » Jquery »

ejecutar plugin jquery una vez cargada la página

Estas en el tema de ejecutar plugin jquery una vez cargada la página en el foro de Jquery en Foros del Web. buenas tardes, (jquery no es mi fuerte) ¿cómo podría ejecutar una función jquery sobre una tabla generada con ajax? @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código Javascript : Ver ...
  #1 (permalink)  
Antiguo 27/11/2013, 13:05
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 22 años, 4 meses
Puntos: 2
ejecutar plugin jquery una vez cargada la página

buenas tardes,

(jquery no es mi fuerte)

¿cómo podría ejecutar una función jquery sobre una tabla generada con ajax?

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.     <!--
  3.         $(function () {
  4.             $('.footable').footable();
  5.         });
  6.     //-->
  7.     </script>

gracias, un saludo.
  #2 (permalink)  
Antiguo 27/11/2013, 23:15
Avatar de Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 13 años, 1 mes
Puntos: 977
Respuesta: ejecutar plugin jquery una vez cargada la página

Para ejecutar un método o función luego de la carga de la página, puedes hacerlo mediante el método ready, el cual ejecutará las funciones o métodos que indiques, luego de que haya cargado el DOM del documento.

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.     $('.footable').footable();
  3. });

También puedes hacerlo con el método load, el cual -dado de la forma explicada en el bloque de código inferior-, ejecutará las funciones o métodos que le indiques, luego de que haya cargado el DOM y su contenido.

Código Javascript:
Ver original
  1. $(window).load(function(){
  2.     $('.footable').footable();
  3. });

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand
  #3 (permalink)  
Antiguo 28/11/2013, 03:53
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 11 meses
Puntos: 206
Respuesta: ejecutar plugin jquery una vez cargada la página

Alexis, tal y como lo tiene, es equivalente a lo que dices.
Código Javascript:
Ver original
  1. $(function () {
  2.     //codigo
  3. });
Sólo ejecutará el código cuando el DOM esté cargado (pero sin esperar a que las imágenes estén cargadas).

Por otro lado, si estás metiendo elementos tras una llamada ajax, deberás ejecutar
Código Javascript:
Ver original
  1. $('.footable').footable();
dentro de la función que recibe la respuesta de ajax, justo despues de meter el elemento con la clase footable en el DOM de la página.
  #4 (permalink)  
Antiguo 28/11/2013, 04:04
 
Fecha de Ingreso: julio-2002
Mensajes: 813
Antigüedad: 22 años, 4 meses
Puntos: 2
Respuesta: ejecutar plugin jquery una vez cargada la página

gracias por vuestras respuestas,

efectivamente la tabla se genera con ajax después de cargar la página inicialmente.
utilizo una función ajax para recargar para cargar este y otros códigos, y entonces me pregunto si, ¿es bueno que ejecute esa llamada jquery siempre que reciba una llamada ajax, sea o no una tabla, o hay otra forma de hacerlo?

un saludo,
josé carlos.
  #5 (permalink)  
Antiguo 28/11/2013, 04:43
Avatar de marlanga  
Fecha de Ingreso: enero-2011
Ubicación: Murcia
Mensajes: 1.024
Antigüedad: 13 años, 11 meses
Puntos: 206
Respuesta: ejecutar plugin jquery una vez cargada la página

No es bueno.
Si no existe una tabla con esa clase, y se ejecuta el método footable en cualquier llamada ajax, no pasará nada porque el elemento no existe.
Pero si existe, y ya le ejecutaste footable cuando lo recuperaste con ajax, es posible que te destroce el chiringuito al ejecutar footable por segunda vez.
Todo depende de qué hace y cómo lo hace el plugin footable. Pero por norma general, no es bueno.

Etiquetas: página, plugin, vez
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 17:30.