Foros del Web » Programando para Internet » Jquery »

Problema con javascriopt y jQuery

Estas en el tema de Problema con javascriopt y jQuery en el foro de Jquery en Foros del Web. Hola chicos, soy bastante nuevo en Javascript y jQuery, y tengo un problemilla a ver si me podéis ayudar. Tengo una web con scrollto y ...
  #1 (permalink)  
Antiguo 29/03/2011, 02:30
 
Fecha de Ingreso: marzo-2011
Mensajes: 1
Antigüedad: 13 años, 7 meses
Puntos: 0
Pregunta Problema con javascriopt y jQuery

Hola chicos,
soy bastante nuevo en Javascript y jQuery, y tengo un problemilla a ver si me podéis ayudar.
Tengo una web con scrollto y tb una función de javascript para desplegar imágenes. El caso es que si tengo una imagen desplegada no me funcionan los enlaces, se desactivan hasta que vuelvo a hacer click en la imagen para plegarla. No sé cuál es la forma de hacer que los enlaces sigan funcionando a pesar de tener la imagen desplegada.
He probado con jQuery no conflict pero no conseguí arreglarlo.

La página es www.josemontero.es/monkey
Os paso el código javascript:
Muchas gracias!!


basepage = '';
jQuery.noConflict();
jQuery(function(jQuery) {
jQuery('#gallery .zoom').css({display:'block',opacity:0});

jQuery('a.scrollto').click(function()
{
var target = jQuery(this.hash);
target = target.size() && target || jQuery("[name=" + this.hash.slice(1) +']');
if (target.size())
{
target.ScrollTo(600);
return false;
}
});

jQuery.noConflict();
jQuery('#gallery li .galimage').click(function()
{
jQuery('#gallery li').stop().animate({'height':100},400);
jQuery('#gallery .galinfo').stop().animate({marginTop:5},400);
jQuery('#gallery .zoom').stop().animate({marginTop:30,opacity:0},40 0);

pnt = jQuery(this).parent();

if(jQuery(pnt).height()<=160)
{
jQuery(pnt).stop().animate({height: jQuery(pnt).find('.galimage img').height() },400, function(){ jQuery(this).ScrollTo('normal'); });
jQuery(pnt).find('.galinfo').stop().animate({margi nTop:35},400);
jQuery(pnt).find('.zoom').stop().animate({marginTo p:60,opacity:1},400);
}
else
{
jQuery('#gallery li').stop().animate({'height':160},400);
jQuery('#gallery .galinfo').stop().animate({marginTop:25},400);
jQuery('#gallery .zoom').stop().animate({marginTop:50,opacity:0},40 0);
}

});
});
  #2 (permalink)  
Antiguo 29/03/2011, 05:14
Avatar de Naahuel  
Fecha de Ingreso: marzo-2011
Ubicación: localhost
Mensajes: 796
Antigüedad: 13 años, 8 meses
Puntos: 192
Respuesta: Problema con javascriopt y jQuery

Interesante página e interesante problema.

Lo que yo pienso es que estás creando conflictos llamando a la función $.
El script que pusiste acá y el que está en el sitio web no coinciden. En el script que tenés en el sitio actualmente, intentá haciendo este cambio:
La línea que es:
Código Javascript:
Ver original
  1. jQuery(function($) {
Cambiala por:
Código Javascript:
Ver original
  1. $(function() {

Es sólo que no veo la necesidad de eso (tal vez esté equivocado). El error que me da la consola de depuración cuando tenés desplegada una foto es:
Cita:
Uncaught TypeError: Object #<Object> has no method 'ScrollTo'
El cual aparece cientos, miles de veces siempre que una foto esté expandida. Ese error se debe a esta línea:
Código Javascript:
Ver original
  1. $(pnt).stop().animate({height: $(pnt).find('.galimage img').height() },400, function(){ $(this).ScrollTo('normal'); });

¿Por qué hay un $(this).ScrollTo('normal');? Tampoco puedo entender la necesidad de eso, pues yo no hice el script y no sé qué pasaría si se lo quita.
__________________
nahueljose.com.ar
  #3 (permalink)  
Antiguo 29/03/2011, 09:07
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años, 7 meses
Puntos: 1284
Tema movido desde javascript
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: 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




La zona horaria es GMT -6. Ahora son las 04:44.