Foros del Web » Programando para Internet » Jquery »

[SOLUCIONADO] Problema con fadeToggle

Estas en el tema de Problema con fadeToggle en el foro de Jquery en Foros del Web. Buenas, tengo el siguiente problema, he creado un menu hamburguesa con efecto fadeToggle, le añadi la opcion de que al hacer click en el icono, ...
  #1 (permalink)  
Antiguo 12/12/2016, 21:23
 
Fecha de Ingreso: febrero-2014
Ubicación: Bilbao
Mensajes: 36
Antigüedad: 10 años, 2 meses
Puntos: 0
Problema con fadeToggle

Buenas, tengo el siguiente problema,
he creado un menu hamburguesa con efecto fadeToggle, le añadi la opcion de que al hacer click en el icono, se aplique una mascara para oscurecer el contenido y se quitara el scroll de la pagina, asi queda el menu fijo. funciona bien al desplegar el menu, el problema es que no he consigo revertir los efectos al recoger el menu.
El codigo lo tengo asi actualmente, pero le falta el poder deshacer los efectos .modal y body al hacer click de nuevo, probe con el evento .stop() y cambiando el fadeToogle por fadeDown y FadeOut pero nada.
Gracias.

$(document).ready(function(){
var touch = $('#touch-menu');
var menu = $('nav');

$(touch).on('click', function(e) {
e.preventDefault();
menu.slideToggle();
$(".modal").fadeIn();
$('body').css('overflow', 'hidden');
});
  #2 (permalink)  
Antiguo 12/12/2016, 23:31
Avatar de AngelKrak  
Fecha de Ingreso: noviembre-2014
Mensajes: 917
Antigüedad: 9 años, 5 meses
Puntos: 91
Respuesta: Problema con fadeToggle

puedes hacerlo mediante clicks ;)
https://codepen.io/anon/pen/ENeBNZ

Inicias la variable apagada
Código Javascript:
Ver original
  1. var click = false;

y despues haces una condicion de si la variable esta apagada ejecute X Codigo y la Active, y al volver a hacer click que verifique si esta prendida para apagarla y ponerle otro codigo a ejecutar ;)
Código Javascript:
Ver original
  1. if (click == false) {
  2.       click = true;
  3.     e.preventDefault();
  4.     menu.slideToggle();
  5.     $(".modal").fadeTo(500, 1);
  6.     $('body').css('overflow', 'hidden');
  7.     } else {
  8.       click = false;
  9.       menu.slideToggle();
  10.       $(".modal").fadeTo(500, 0);
  11.     $('body').css('overflow', 'auto');
  12.     }
  #3 (permalink)  
Antiguo 13/12/2016, 17:24
 
Fecha de Ingreso: febrero-2014
Ubicación: Bilbao
Mensajes: 36
Antigüedad: 10 años, 2 meses
Puntos: 0
Respuesta: Problema con fadeToggle

Perfecto, no habia caido en la condicional. muchas gracias.
Un saludo...

Etiquetas: Ninguno
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:00.