Foros del Web » Programando para Internet » Jquery »

Efectos al aparecer y desaparecer capas

Estas en el tema de Efectos al aparecer y desaparecer capas en el foro de Jquery en Foros del Web. Buenas, he estado probando una serie de elementos que al clickear sobre ellos hace que vaya apareciendo un ingrediente de una tarta al pulsar sobre ...
  #1 (permalink)  
Antiguo 28/03/2016, 11:06
El_Astur
Invitado
 
Mensajes: n/a
Puntos:
Efectos al aparecer y desaparecer capas

Buenas,

he estado probando una serie de elementos que al clickear sobre ellos hace que vaya apareciendo un ingrediente de una tarta al pulsar sobre cada uno. El problema que tengo es que no sé cómo hacer para que cuando vuelvo a clickear sobre uno de esos elementos vuelva a quitarle el borde de color activado que se ha puesto al clickear por primera vez (el que agrego de color verde con jquery).
También me gustaría saber cómo se podría hacer para que una vez elegidos, por ejemplo, tres ingredientes automáticamente me redirija a una url, estoy probando pero no logro arreglar estas dos cosas. Mi código es:

Código HTML:
 <div class="item item-chocolate">
            <a href="#" class="show-chocolate">
              <img src="chocolate.png" alt="chocolate" />
              <p>chocolate</p>
            </a>
          </div>
          <div class="item item-cerezas">
            <a href="#" class="show-cerezas">
              <img src="cerezas.png" alt="cerezas" />
              <p>cerezas</p>
            </a>
          </div>
          <div class="item item-caramelos">
            <a href="#" class="show-caramelos">
              <img src="caramelos.png" alt="caramelos" />
              <p>caramelos</p>
            </a>
          </div>
          <div class="item item-merengue">
            <a href="#" class="show-merengue">
              <img src="merengue.png" alt="merengue" />
              <p>merengue</p>
            </a>
          </div>
          <div class="item item-figura">
            <a href="#"figura.png" alt="figura" />
              <p>figura</p>
            </a>
          </div>
          <div class="item item-lazo">
            <a href="#" class="show-lazo">
              <img src="lazo.png" alt="lazo" />
              <p>lazo</p>
            </a>
          </div> 
jquery

Código:
 <script src="http://code.jquery.com/jquery.js"></script>
    <script type="text/javascript">
      $(document).ready(function(){ 
         $('.show-chocolate').on('click',function(){
            $('.bacon').toggle('slow');
            $('.item-chocolate img').css("border", "6px solid green");
         });
         $('.show-cereza').on('click',function(){
            $('.cereza').toggle('slow');
            $('.item-cereza img').css("border", "6px solid green");
         });
        $('.show-caramelos').on('click',function(){
            $('.caramelosi').toggle('slow');
            $('.item-caramelos img').css("border", "6px solid green");
         });
        $('.show-merengue').on('click',function(){
            $('.merengue').toggle('slow');
            $('.item-merengue img').css("border", "6px solid green");
         });
        $('.show-figura').on('click',function(){
            $('.figura').toggle('slow');
            $('.item-figura img').css("border", "6px solid green");
         });
        $('.show-lazos').on('click',function(){
            $('.lazos').toggle('slow');
            $('.item-lazos img').css("border", "6px solid green");
         });
      });
    </script>
Saludos!!!!
  #2 (permalink)  
Antiguo 31/03/2016, 09:29
 
Fecha de Ingreso: enero-2014
Ubicación: Navarra
Mensajes: 94
Antigüedad: 10 años, 3 meses
Puntos: 18
Respuesta: Efectos al aparecer y desaparecer capas

Hola.

Yo usaria la funcion toggleClass() para añadir o quitar una clase.

en la hoja de estilos añade esta regla :

.verde { border: 6px solid green; }

y en el js añade esa clase con toggleClass

y en cuanto a lo de redirigir cuando haya 3 seleccionadas yo usaria una funcion que cuente cuantas clases "verde"
seria algo asi:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.          $('.show-chocolate').on('click',function(){
  3.             $('.bacon').toggle('slow');
  4.             $('.item-chocolate img').toggleClass("verde");
  5.             cuenta();            
  6.          });
  7.          $('.show-cereza').on('click',function(){
  8.             $('.cereza').toggle('slow');
  9.             $('.item-cereza img').toggleClass("verde");
  10.             cuenta();            
  11.          });
  12.         $('.show-caramelos').on('click',function(){
  13.             $('.caramelosi').toggle('slow');
  14.             $('.item-caramelos img').toggleClass("verde");
  15.             cuenta();            
  16.          });
  17.         $('.show-merengue').on('click',function(){
  18.             $('.merengue').toggle('slow');
  19.             $('.item-merengue img').toggleClass("verde");
  20.             cuenta();            
  21.          });
  22.         $('.show-figura').on('click',function(){
  23.             $('.figura').toggle('slow');
  24.             $('.item-figura img').toggleClass("verde");
  25.             cuenta();            
  26.          });
  27.         $('.show-lazos').on('click',function(){
  28.             $('.lazos').toggle('slow');
  29.             $('.item-lazos img').toggleClass("verde");
  30.             cuenta();            
  31.          });        
  32.          
  33.       });
  34.     function cuenta(){
  35.     var seleccionadas = $('.verde').length;
  36.     if (seleccionadas > 2){
  37.     window.location = 'http://www.google.com';
  38.          }}

no lo he probado, espero te funcione
saludos
  #3 (permalink)  
Antiguo 02/04/2016, 19:03
El_Astur
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Efectos al aparecer y desaparecer capas

Buenas,

funciona correctamente la primera vez que entras - selecciona tres y redirecciona -, pero si actualizas el navegador o vuelves a entrar de nuevo, siempre redirecciona al seleccionar 2...
  #4 (permalink)  
Antiguo 03/04/2016, 11:18
El_Astur
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Efectos al aparecer y desaparecer capas

Nada, lo he seguido probando pero en cuanto seleccionas 2 elementos ya redirecciona siempre...

Cita:
Iniciado por sintel_1 Ver Mensaje
Hola.

Yo usaria la funcion toggleClass() para añadir o quitar una clase.

en la hoja de estilos añade esta regla :

.verde { border: 6px solid green; }

y en el js añade esa clase con toggleClass

y en cuanto a lo de redirigir cuando haya 3 seleccionadas yo usaria una funcion que cuente cuantas clases "verde"
seria algo asi:

Código Javascript:
Ver original
  1. $(document).ready(function(){
  2.          $('.show-chocolate').on('click',function(){
  3.             $('.bacon').toggle('slow');
  4.             $('.item-chocolate img').toggleClass("verde");
  5.             cuenta();            
  6.          });
  7.          $('.show-cereza').on('click',function(){
  8.             $('.cereza').toggle('slow');
  9.             $('.item-cereza img').toggleClass("verde");
  10.             cuenta();            
  11.          });
  12.         $('.show-caramelos').on('click',function(){
  13.             $('.caramelosi').toggle('slow');
  14.             $('.item-caramelos img').toggleClass("verde");
  15.             cuenta();            
  16.          });
  17.         $('.show-merengue').on('click',function(){
  18.             $('.merengue').toggle('slow');
  19.             $('.item-merengue img').toggleClass("verde");
  20.             cuenta();            
  21.          });
  22.         $('.show-figura').on('click',function(){
  23.             $('.figura').toggle('slow');
  24.             $('.item-figura img').toggleClass("verde");
  25.             cuenta();            
  26.          });
  27.         $('.show-lazos').on('click',function(){
  28.             $('.lazos').toggle('slow');
  29.             $('.item-lazos img').toggleClass("verde");
  30.             cuenta();            
  31.          });        
  32.          
  33.       });
  34.     function cuenta(){
  35.     var seleccionadas = $('.verde').length;
  36.     if (seleccionadas > 2){
  37.     window.location = 'http://www.google.com';
  38.          }}

no lo he probado, espero te funcione
saludos
  #5 (permalink)  
Antiguo 03/04/2016, 12:47
El_Astur
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Efectos al aparecer y desaparecer capas

Sigue sin funcionar

Última edición por El_Astur; 03/04/2016 a las 12:53
  #6 (permalink)  
Antiguo 03/04/2016, 13:05
El_Astur
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Efectos al aparecer y desaparecer capas

Lo he solucionado así:

function cuenta(){
var seleccionadas = $('.green').length;
if (seleccionadas > 5){
window.location = 'http://www.mobusi.com';
}};

Coge siempre dos menos que el número que se pone en el if...
  #7 (permalink)  
Antiguo 04/04/2016, 01:49
 
Fecha de Ingreso: enero-2014
Ubicación: Navarra
Mensajes: 94
Antigüedad: 10 años, 3 meses
Puntos: 18
Respuesta: Efectos al aparecer y desaparecer capas

Hola.

Habría que ver el html si tienes algun error de cierre de etiquetas, podrias pasar el validador de la w3c o con el webdeveloper en firefox comprobar el codigo resultante a ver donde te genera esa clase.

De todas formas para para asegurarte que no tienes ninguna clase "verde" cuando carga el html podrias poner:

$(".verde").removeClass("verde");

como primera regla despues de ready();

saludos.

Etiquetas: capas, desaparecer, efectos
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 18:28.