Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] Problema con Script de galería

Estas en el tema de Problema con Script de galería en el foro de Jquery en Foros del Web. Hola gente, me he encontrado este script [URL="http://www.ajaxshake.com/es/JS/2410381/crear-un-efecto-sliding-door-con-css-y-jquery-sliding-door.html"]sliding Door[/URL] que me ha gustado y quería implementarlo en mi web, la parte buena es que lso ...
  #1 (permalink)  
Antiguo 05/11/2014, 11:13
Avatar de Shelonix  
Fecha de Ingreso: octubre-2014
Ubicación: Chile
Mensajes: 11
Antigüedad: 9 años, 6 meses
Puntos: 0
Problema con Script de galería

Hola gente, me he encontrado este script [URL="http://www.ajaxshake.com/es/JS/2410381/crear-un-efecto-sliding-door-con-css-y-jquery-sliding-door.html"]sliding Door[/URL] que me ha gustado y quería implementarlo en mi web, la parte buena es que lso estilos funcionan
la parte mala es que el script no está funcionando y no estoy seguro de si sea algún problema de compatibilidad entre el jquery-1.11.1.min.js que uso en mi pagina y el archivo de jquery-1.3.1.min.js

el caso es que lo único que hice de cambios fue en los estilos para usar imagenes de 200 x 200 en lugar de 164 (si no mal recuerdo) que usa en el ejemplo

este es el script que me debe hacer el efecto de sliding door
Código Javascript:
Ver original
  1. $(document).ready(function() {
  2.            
  3.                 //Custom settings
  4.                 var style_in = 'easeOutBounce';
  5.                 var style_out = 'jswing';
  6.                 var speed_in = 1000;
  7.                 var speed_out = 300;   
  8.            
  9.                 //Calculation for corners
  10.                 var neg = Math.round($('.qitem').width() / 2) * (-1);  
  11.                 var pos = neg * (-1);  
  12.                 var out = pos * 2;
  13.                
  14.                 $('.qitem').each(function () {
  15.                
  16.                     url = $(this).find('a').attr('href');
  17.                     img = $(this).find('img').attr('src');
  18.                     alt = $(this).find('img').attr('img');
  19.                    
  20.                     $('img', this).remove();
  21.                     $(this).append('<div class="topLeft"></div><div class="topRight"></div><div class="bottomLeft"></div><div class="bottomRight"></div>');
  22.                     $(this).children('div').css('background-image','url('+ img + ')');
  23.            
  24.                     $(this).find('div.topLeft').css({top:0, left:0, width:pos , height:pos});  
  25.                     $(this).find('div.topRight').css({top:0, left:pos, width:pos , height:pos});   
  26.                     $(this).find('div.bottomLeft').css({bottom:0, left:0, width:pos , height:pos});
  27.                     $(this).find('div.bottomRight').css({bottom:0, left:pos, width:pos , height:pos}); 
  28.            
  29.                 }).hover(function () {
  30.                
  31.                     $(this).find('div.topLeft').stop(false, true).animate({top:neg, left:neg}, {duration:speed_out, easing:style_out});
  32.                     $(this).find('div.topRight').stop(false, true).animate({top:neg, left:out}, {duration:speed_out, easing:style_out});   
  33.                     $(this).find('div.bottomLeft').stop(false, true).animate({bottom:neg, left:neg}, {duration:speed_out, easing:style_out});  
  34.                     $(this).find('div.bottomRight').stop(false, true).animate({bottom:neg, left:out}, {duration:speed_out, easing:style_out}); 
  35.                            
  36.                 },
  37.                
  38.                 function () {
  39.            
  40.                     $(this).find('div.topLeft').stop(false, true).animate({top:0, left:0}, {duration:speed_in, easing:style_in});  
  41.                     $(this).find('div.topRight').stop(false, true).animate({top:0, left:pos}, {duration:speed_in, easing:style_in});   
  42.                     $(this).find('div.bottomLeft').stop(false, true).animate({bottom:0, left:0}, {duration:speed_in, easing:style_in});
  43.                     $(this).find('div.bottomRight').stop(false, true).animate({bottom:0, left:pos}, {duration:speed_in, easing:style_in}); 
  44.                
  45.                 }).click (function () {
  46.                     window.location = $(this).find('a').attr('href');  
  47.                 });
  48.                
  49.                
  50.            
  51.             });

aqui pongo como está el head de la pagina donde tengo el script, no se si el orden tenga algo que ver, como tampoco se si las versiones de jquery me esten jugando en contra

Código HTML:
Ver original
  1. <link rel="shortcut icon" href="img/logo.ico">
  2.         <link rel="stylesheet" href="css/catalogo.css" type="text/css" media="screen" />
  3.         <link rel="stylesheet" href="css/galery.css" type="text/css" media="screen" />
  4. <script type="text/javascript" src="js/jquery-1.3.1.min.js"></script>
  5.         <script src="js/jquery.easing.1.3.js"></script>
  6.         <script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
  7.         <script type="text/javascript" src="js/proceso.js"></script>


y finalmente como estoy haciendo la galeria (son varias paginas que hago un llamado con jquery, así que son varias paginas iguales pero para mostrar diferentes tipos de imagenes)
Código HTML:
Ver original
  1. <div class="contenedor">
  2.                 <div class="qitem"><a href="#"><img src="images/otros/otro1.jpg" alt="Test 1" title="" width="200" height="200"/></a>
  3.                 <span class="caption"><h4>Clavo</h4><p>Clavo de medida.</p></span></div>
  4.              <div class="qitem"><a href="#"><img src="images/otros/otro2.jpg" alt="Test 1" title="" width="200" height="200"/></a>
  5.                 <span class="caption"><h4>Clavo</h4><p>Clavo de medida.</p></span></div>
  6.              <div class="qitem"><a href="#"><img src="images/otros/otro3.jpg" alt="Test 1" title="" width="200" height="200"/></a>
  7.                 <span class="caption"><h4>Clavo</h4><p>Clavo de medida.</p></span></div>
  8.              <div class="qitem"><a href="#"><img src="images/otros/otro4.jpg" alt="Test 1" title="" width="200" height="200"/></a>
  9.                 <span class="caption"><h4>Clavo</h4><p>Clavo de medida.</p></span></div>
  10.              <div class="qitem"><a href="#"><img src="images/otros/otro5.jpg" alt="Test 1" title="" width="200" height="200"/></a>
  11.                 <span class="caption"><h4>Clavo</h4><p>Clavo de medida.</p></span></div>
  12.              <div class="qitem"><a href="#"><img src="images/otros/otro6.jpg" alt="Test 1" title="" width="200" height="200"/></a>
  13.                 <span class="caption"><h4>Clavo</h4><p>Clavo de medida.</p></span></div>
  14.              <div class="qitem"><a href="#"><img src="images/otros/otro7.jpg" alt="Test 1" title="" width="200" height="200"/></a>
  15.                 <span class="caption"><h4>Clavo</h4><p>Clavo de medida.</p></span></div>
  16. </div>

cualquier ayuda que me den para identificar cual es el error que estoy cometiendo, estaré agradecido

Última edición por Shelonix; 05/11/2014 a las 11:19
  #2 (permalink)  
Antiguo 06/11/2014, 07:11
Avatar de dAvidcA  
Fecha de Ingreso: septiembre-2009
Ubicación: /home/dev/
Mensajes: 73
Antigüedad: 14 años, 7 meses
Puntos: 7
Respuesta: Problema con Script de galería

Hola Shelonix, probé tu código exactamente y funcionó. Solamente noté algo: el orden de los scripts SI importa, prueba organizando tu <head> </head> de la siguiente manera:

Código HTML:
Ver original
  1. <link rel="shortcut icon" href="img/logo.ico">
  2. <link rel="stylesheet" href="css/catalogo.css" type="text/css" media="screen" />
  3. <link rel="stylesheet" href="css/galery.css" type="text/css" media="screen" />
  4.  
  5. <script type="text/javascript" src="js/jquery-1.11.1.min.js"></script>
  6. <script type="text/javascript" src="js/jquery-1.3.1.min.js"></script>
  7. <script src="js/jquery.easing.1.3.js"></script>
  8. <script type="text/javascript" src="js/proceso.js"></script>

Aquí una prueba de que funciona: http://jsfiddle.net/dAvidcA/s1mpbr0z/

Saludos.
  #3 (permalink)  
Antiguo 06/11/2014, 08:11
Avatar de Shelonix  
Fecha de Ingreso: octubre-2014
Ubicación: Chile
Mensajes: 11
Antigüedad: 9 años, 6 meses
Puntos: 0
Respuesta: Problema con Script de galería

por lo que veo mi problema esta en el orden, ahora cuando decía que tenía un problema de compatibilidad con el jquery.
resulta que la pagina de la galería la estoy llamando con jquery así inicialmente

Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.             $(document).ready(function() {
  3.             $("#menu").load('html/menu.html');
  4.             $("#contenido").load('html/inicio.html');
  5.             });
  6.         </script>

el caso es que estoy usando un index, en él estoy cargando en in div llamado contenido todas las paginas, tengo un boton donde cargo la pagina de la galería y a su vez esa pagina tiene el script
Código Javascript:
Ver original
  1. <script type="text/javascript">
  2.              $(document).ready(function(){
  3.                $("#show").load('componentes/inicio.html');
  4.                   });
  5.         </script>

para llamar la primera galería donde se muestran las imágenes, pasa que colocando el orden que me has indicado (que parece que antes lo puse) ya no carga las paginas que contienen las imágenes que quiero para la galería y no se si sea alguna incompatibilidad entre el jquery 1.11.1 con el 1.3.1 que me anula el segundo código de carga para las paginas pero no el primero que los botones siguen funcionando.

EDITO: corrijo, si me anula ambos, los botones dejan de funcionar también.
¿El problema podría estar en mi servidor local?

Última edición por Shelonix; 06/11/2014 a las 09:06

Etiquetas: galeria, javascript, scripts
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 09:53.