Foros del Web » Programando para Internet » Jquery »

Conflicto con jquery y libreria anterior

Estas en el tema de Conflicto con jquery y libreria anterior en el foro de Jquery en Foros del Web. Wenas!!, decir primero que no estoy convencido 100% que este sea mi problema , ya que no soy ningún experto en js y por eso ...
  #1 (permalink)  
Antiguo 12/04/2011, 04:06
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Conflicto con jquery y libreria anterior

Wenas!!, decir primero que no estoy convencido 100% que este sea mi problema , ya que no soy ningún experto en js y por eso puede que tenga algunos problemas con conceptos básicos (perdoneseme en ese caso )

Mi problema es que tengo que añadir una aplicación propia en una web ajena , no es posible contactar con el programador de esta.

Mi aplicación usa jquery y en particular el evento .load para pasar variables y cambios de páginas

por ejemplo

Código:
$("#miDiv").load("mipagina.php")
Al colocar mi aplicación( que en solitario y otras webs funciona perfectamente ),en esta web no funcioanaba.
Estas lineas de codigo con el .load que he puesto antes dejan de actuar y firebug no da ningún error.

Revisando el código de la web he topado con una libreria que contiene una clase parece propia del autor de la web, es una libreria de frames que parece hacer algo con el evento .load .

Y aquí es donde me pierdo , pues no llego a tanto como para saber si es el culpable o no de que jquery dege de funcionar pero tiene toda la pinta de que se crean conflicto.

Si comento momentaneamente la libreria original de la web , se usa para tanto que esta deja de funcionar así que no puedo comprobar si es ella la responsable y en caso de que la solución pasase por modificar una de las dos librerias tendria que ser jquery pues la otra afecta por toda la página.

Otra opción que se me ocurre es si existe algo que "desincluya una libreria" , así podria desincluir la libreria que me causa conflicto mientras se ejecuta mi aplicación y abrirla de nuevo después.

Y aqui algunas de las lineas q creo que causan conflicto

libreria del autor de la web:

Código:
	
ready : function(fn) {
	if (fn) {
		libreria.event.addEvent(window, "load", fn);
	}
},
.
.
.
.
libreria.event.addEvent(tscr, "load", onload))
.
.
.
load : function() {
  contenido funcion
}
No pongo toda la libreria por que aparte de q no es mia, son mas de 1500 lineas, pero esas son las lineas donde se hace algo con el evento load.

he podido ver que en jquery tb hay similares:
Código:
a.addEventListener("load",d.ready,!1)
.
.
etc..
Así pues sintetizando, me gustaría saber si pensais que mi problema es este , conflicto entre ambas librerias o si puede ser otro tipo de problema.
Y claro está si veis una forma de solucionarlo.

Muchas grácias!!!
  #2 (permalink)  
Antiguo 12/04/2011, 05:14
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 9 años, 9 meses
Puntos: 37
Respuesta: Conflicto con jquery y libreria anterior

Hola.

La verdad, no creo que sea conflicto entre plugins porque, al menos jQuery, no es obstructivo. ¿La simple función load() de jquery no funciona? Quiero decir, ¿simplemente $("#miDiv").load("mipagina.php"); no funciona?
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.
  #3 (permalink)  
Antiguo 12/04/2011, 05:25
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

Exacto, y como te cuento es una aplicación que si funciona en solitario o en otras webs.
Y esa linea que comentas: $("#miDiv").load("pagina.php") , que me ha funcionado siempre que la he usado, que funciona en esa aplicación en otras webs y en solitario, no funciona en esta web.
Y como dige arriba firebug no me da error por lo que aun estoy más perdido
  #4 (permalink)  
Antiguo 12/04/2011, 05:37
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 9 años, 9 meses
Puntos: 37
Respuesta: Conflicto con jquery y libreria anterior

Muéstranos tu código a ver si podemos ayudarte... Se me hace muy raro que no funcione. Posiblemente sea un error de esos sencillos que cuesta encontrar.
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.
  #5 (permalink)  
Antiguo 12/04/2011, 05:49
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

Como digo enseñar el código es algo complejo, la web es un portal complejo que monta todas las páginas sobre el index, el index incluye esa libreria de frames que te cuento. Es una libreria de otro y no creo que sea correcto ponerla sin su permiso, aparte de que son casi 1500 lineas, pero he puesto las lineas que usan el load.

Mi aplicación no tiene errores pues como digo funciona en solitario y otras webs.
Al colocarla bajo los includes de ese index deja de funcionar el .load, el resto sigue funcionando(otra funciones jquery funcionan solo falla el .load de las que yo uso)

uso en muchos sitios el .load y en ningúno funciona, uno resumido por ejemplo es

Código:
<script language="javascript" type="text/javascript">
function cambiarPagina() {
    $("#divAcambiar").load("pagina.php");
}
</script>
Código HTML:
<div id="divAcambiar">
   contenido
</div>
<input onclick="cambiaPagina()" type="botton" value="entrar"> 

pero como digo ha de ser algo que ya tenga la página, ya que esto siempre me ha funcionado sin problemas.

Se puede desincluir una libreria con código?, almenos podría probar desincluyendola antes de mi aplicación asi sabría si realmente crean o no conflictos.
  #6 (permalink)  
Antiguo 12/04/2011, 06:46
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

Bueno de momento lo he resuleto cambiando el jquery por ajax, aunq no era mi objetivo pero vuelve a funcioanr, eso si, sin jquery
  #7 (permalink)  
Antiguo 12/04/2011, 09:26
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 9 años, 9 meses
Puntos: 37
Respuesta: Conflicto con jquery y libreria anterior

Te iba a decir si utilizando la función ajax() de jQuery te funcionaba. De todas formas, prueba utilizando la función desde el head de la página, de esta manera:
Código HTML:
<script type="text/javascript src="jquery.js"></script>
<script language="javascript" type="text/javascript">
$(document).ready(function()
{
  function cambiarPagina()
  {
    $("#divAcambiar").load("pagina.php");
  }
});
</script> 
A ver si va a tener relación con el momento de carga...
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.
  #8 (permalink)  
Antiguo 12/04/2011, 10:12
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

desdde el head no va, voy a probar con la funcion ajax() que m has recomendado a ver
  #9 (permalink)  
Antiguo 12/04/2011, 11:50
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

nada ninguno me ha funcionado, necesito algo de ajax que sea exactamente igual q el .load de jquery :(
  #10 (permalink)  
Antiguo 12/04/2011, 14:34
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 9 años, 9 meses
Puntos: 37
Respuesta: Conflicto con jquery y libreria anterior

La función $.ajax() de jQuery viene a ser como el método load(). Si no, lo que te queda es utilizar Ajax directamente...
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.
  #11 (permalink)  
Antiguo 13/04/2011, 02:27
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

ok, la usé ayer y no me recargaba una página completa, solo me iva con html pero no me ejecutaba el php. algo estaría haciendo mal, voy a intetnarlo y si sigue sin salirme te pongo el código a ver si me hechas una mano ;)

Muchas gracias por todo.
  #12 (permalink)  
Antiguo 13/04/2011, 04:08
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

he probado con prototype y con el .ajax de jquery.

El problema es lo de siempre, con prototype muy bien igual q con varias funciones ajax para mostrar código html en ese div, con el .ajax de jquery solo he consgeuido ejecutar un archivo y luego tener la posibilidad de una respuesta pero no incluir una página en un div.

Si pudieras ponerme un ejemplo de como lo harías con el .ajax de jquery seguro q me es de utilidad.

La idea sigue siendo la misma , un modo alternativo de hacer
$("#div").load("pagina.php");

teniendo en cuenta q página php lleba código php, html y css deberia ejecutarse todo al llamaro
  #13 (permalink)  
Antiguo 13/04/2011, 04:46
 
Fecha de Ingreso: marzo-2010
Mensajes: 90
Antigüedad: 10 años, 9 meses
Puntos: 2
Respuesta: Conflicto con jquery y libreria anterior

al final lo he resuelto con ajax, me ha costado la vida pero ya esta, gracias por todo ;)
  #14 (permalink)  
Antiguo 13/04/2011, 06:51
Avatar de KoswiDigital  
Fecha de Ingreso: abril-2011
Ubicación: Galicia - España
Mensajes: 220
Antigüedad: 9 años, 9 meses
Puntos: 37
Respuesta: Conflicto con jquery y libreria anterior

Jeje, me alegro de que lo hayas resuelto al fin. Un saludo :)
__________________
http://www.koswidigital.com - Diseño web, Programación web, Fotografía profesional, Retoque digital.

Etiquetas: conflicto, libreria, anteriores
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 20:21.