Foros del Web » Programando para Internet » Jquery »

¿Como llamar a una funcion javascript correctamente en jquery mobile?

Estas en el tema de ¿Como llamar a una funcion javascript correctamente en jquery mobile? en el foro de Jquery en Foros del Web. Hola. En primer lugar, es mi primer mensaje pero me habré leído cientos de post de forosdelweb, muchos de los cuales me han dado solución ...
  #1 (permalink)  
Antiguo 18/06/2012, 05:14
 
Fecha de Ingreso: junio-2012
Ubicación: Catalunya
Mensajes: 7
Antigüedad: 11 años, 10 meses
Puntos: 0
Pregunta ¿Como llamar a una funcion javascript correctamente en jquery mobile?

Hola.

En primer lugar, es mi primer mensaje pero me habré leído cientos de post de forosdelweb, muchos de los cuales me han dado solución a muchas de las problemáticas habituales que he ido encontrando.

Bien, os comento.

Tengo una pagina web para mobil (un panel de clientes) desarrollado con Jquery mobile. Todo funciona correctamente, me carga funciones, etc... a excepción de que aquellas funciones que carga a posteriori, no les aplica el estilo CSS.

Por ejemplo, datos.html tiene un body onload=funcion... que llama a la función y lo carga en el div=datos.

Esto lo hace bien, pero no aplica el estilo al contenido del div.

CONOZCO LA RAZON PROBLEMA:
Me he estado informando al respecto, leyendo multitud de foros de jquerymobile etc...y el problema viene derivado de la forma en que Jquery mobile carga la DOM. Básicamente es algo (si no entendí mal) relacionado con que la DOM y los estilos los carga la primera vez, por lo que cuando cargas justo después una función, no le aplica los estilos CSS, aunque si el contenido en texto plano, sin formato.

LA SOLUCIÓN QUE SE PROPONE
Tanto en los foros de jquerymobile como en su documentación, indican que las funciones deben llamarse como eventos, en vez de $(document).load utilizar algo de este estilo: $(document).live('pageinit',function()){


MI PROBLEMA
Mi problema es que yo siempre he definido las funciones y las llamadas a las mismas como en su dia las aprendí. Que es:

- En un archivo .js creo las funciones con function(){...};
- En el html que necesito una la llamo con un onload= onclick= etc..dependiendo de lo que precise.

Ejemplo de como lo hago yo:
function aviso()
alert ('aviso de forosdelweb');

y la llamaria con un body onload="aviso()" por ejemplo.

Por tanto, se trata basicamente de que no se escribir esas mismas funciones con el formato de $(document).live('pageinit',function..). En un foro de jquery mobile explican, por ejemplo, esto:

$(document).live ('pageinit',function(event){
alert( 'aviso de forosdelweb' );
});

Lo he probado con un simple alert dentro pero no aparece, por lo que entiendo que algo hago mal y debe de ser una tontería de cómo se debe escribir.

Me gustaría, por favor, que alguien me hiciese un simple ejemplo de como pasar una función que yo llamo a otra con "el formato" correcto.

Me desatascará la finalización de la web, y mucho!

Muchas gracias, y felicidades a un tal caricatos, en los últimos meses sus post me han solucionado muchísimas dudas, y he visto que es muy activo por aquí.
  #2 (permalink)  
Antiguo 26/06/2012, 09:18
 
Fecha de Ingreso: junio-2012
Ubicación: Catalunya
Mensajes: 7
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

alguien me podría ayudar al respecto? llevo atascado 1 semana con esto.!

cualquier ayuda será bienvenida.
  #3 (permalink)  
Antiguo 17/07/2012, 01:46
 
Fecha de Ingreso: junio-2012
Ubicación: Catalunya
Mensajes: 7
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

Sigo sin solventar el problema.

Alguien me podría indicar por donde tirar?

Gracias.
  #4 (permalink)  
Antiguo 19/08/2012, 17:45
 
Fecha de Ingreso: agosto-2012
Mensajes: 4
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

hey hola amigo
la verdad yo no te ayudare a solucionar nada
solo quiero decirte que yo estoy igual porque abro un pagina desde un linkbuttom de jquerymobile y no me ejecuta mis funciones en js
pero bueno solo queria recordarte que no estas solo
animo ;)
  #5 (permalink)  
Antiguo 19/08/2012, 18:06
 
Fecha de Ingreso: agosto-2012
Mensajes: 4
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

hey que ondas econtre algo
no se si a ti te sirva pero a mi si me funciono
primero probe lo tuyo de

$(document).live ('pageinit',function(event){
alert( 'aviso de forosdelweb' );
});
incluso vi una opcion de jquerymobile que segun desactiva lo del ajax en href
porque has de saber que todas las llamadas de href las cambia por llamadas ajax
a menos que pongas como opcion en el link este atributo
rel="external"

oseace

<a href="tuPagina.html" rel="external" >link</a>

bueno al menos esa fue mi solucion saludos espeor te sirva
animo ;)
  #6 (permalink)  
Antiguo 19/08/2012, 18:50
 
Fecha de Ingreso: agosto-2012
Mensajes: 4
Antigüedad: 11 años, 8 meses
Puntos: 1
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

y si quieres que un formulario no utilice ajax tampoco le agregas
target="_self"
osea :
<form action="pagina.php" method="GET "target="_self">
</form>
  #7 (permalink)  
Antiguo 20/10/2012, 05:23
 
Fecha de Ingreso: mayo-2012
Ubicación: Cordoba
Mensajes: 6
Antigüedad: 12 años
Puntos: 0
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

Hola segun he leido y no me hagais mucho caso
cuando pulsas sobre un link a otra pagina , jquery mobile hace uso de ajax
y esa pagina solo carga la parte page y no carga ningun script
por lo que supongo que la solucion es desabilitar ajax o poner el script justo antes de la etiqueta </body>

un saludo
  #8 (permalink)  
Antiguo 15/01/2013, 03:33
 
Fecha de Ingreso: enero-2013
Mensajes: 1
Antigüedad: 11 años, 3 meses
Puntos: 0
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

Buenos, yo también he tenido números problemas con el codigo js utilizado jquery mobile.
Una pagina que me ha servido y aclarado el tema es.

http://adeideas.com/wordpress/?p=96

El tema esta que jquerymobile hace las peticiones por ajax y si quieres asegurarte que cargue las funciones tienes que ponerlas dentro de data-role="page"


Un abrazo
  #9 (permalink)  
Antiguo 06/05/2016, 07:24
 
Fecha de Ingreso: septiembre-2015
Mensajes: 4
Antigüedad: 8 años, 7 meses
Puntos: 0
Respuesta: ¿Como llamar a una funcion javascript correctamente en jquery mobile?

Gracias kiketurry por la respuesta me soluciono mi problema de una semana

Para que quede claro el jquery debe ir dentro del div data-role=page.

ejemplo.

<div data-role="page" >

<script></script>

</div>


Y no fuera de este como. Asi funciona sin problemas.

Etiquetas: correctamente, funcion, html, javascript, js
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 09:32.