Pokazywanie i chowanie elemenu fadeIn() fadeOut()

0

Witam.
Mam pewien przycisk, którego naciśnięcie powoduje pokazanie się ukrytego diva. Nie wiem co mam zrobić, aby po ponownym wciśnięciu tego przycisku okno się schowało. Gdy w funkcji fadeOut() wpisuję klasę przycisku, którym go otworzyłem, div pokazuje mi się i od razu zamyka.

	$(document).ready(function(){
	    $(".pozycja_z_listy").click(function(){
	        $(".rozwiniecie").fadeIn(500);

	    });
	});

	$(document).click(function(e) {
        var $target = $(e.target);
        if (!$target.is('.pozycja_z_listy')) {
            $('.rozwiniecie').fadeOut(500);
        }
    }); 

PS. Uprzedzam, że na chwilę obecną JS to nie moja specjalność :P

1

Musisz sobie w jakiś sposób przechować bierzący stan docelowego diva, najlepiej lokalnie w atrybucie data- lub najprościej za pomocą klasy, którą dodajesz i usuwasz: http://api.jquery.com/toggleclass/

T co teraz robisz jest bez sensu - przypisujesz dwa handlery robiące przeciwstawne rzeczy w tym samym czasie do tego samego elementu.

PS
Równie łatwo zrobisz to bez jQuery.

1

Masz tu prosty przykład: http://codepen.io/anon/pen/jVLeNz

Tu zwijanie zamiast zanikania: http://codepen.io/anon/pen/qqXJRd

1 użytkowników online, w tym zalogowanych: 0, gości: 1