JS Przebudowa kodu JS

Założony przez p0y3b.

Cześć.

Mam kod który wyświetla forum po kliknięciu w atrybut z daną klasą
Kod:
<script type="text/javascript">
jQuery(document) .ready(function() {    
$('.enmenupm').on('click', function(){
        $('.enmenupmopen').slideToggle('100');
        return false;
    });
    $('html, body').on('click',function(){
        $('enmenupmopen').slideUp('100');
    });
    $("enmenupmopen").click(function(e){
        e.stopPropagation();
    });
});
</script>

Problem polega na tym że menu zniknie tylko po ponownym kliknięciu w ten sam element, jak mogę to przerobić aby menu znikało np po kliknięciu "gdzieś na forum"
TaniDedyk.pl
Wystarczy zbadać, czy kliknięcie odbyło się po za elementem, następnie ukryć menu.

Pierwszy link z wyszukiwarki: https://stackoverflow.com/questions/2868582/click-outside-menu-to-close-in-jquery
Prośby na PW dotyczące wsparcia z problemami będą ignorowane. Pomoc poza forum - odpłatna; kontakt: [email protected].
@Snake_ Mogę prosić o gotowe rozwiązanie ? Nie potrafi nic z tego wyczytać
(24.09.2017, 00:10)p0y3b napisał(a): @Snake_ Mogę prosić o gotowe rozwiązanie ? Nie potrafi nic z tego wyczytać
To do działu giełdy ogłoszeń.
Moja oferta - pomoc przy tworzeniu i edycji stron i forum MyBB.
Pomogę prywatnie rozwiązać problem, za naprawdę niewielką opłatą. :)
Poradnik - Jak zbadać element na stronie?
Ale czego w tym kodzie nie rozumiesz? Pokaż jak to zrobiłeś.
Kod:
$(window).click(function() {
//Hide the menus if visible
});

$('#menucontainer').click(function(event){
    event.stopPropagation();
});
Wystarczy dodać kod na chowanie menu i zmienić kotwicę na taką jaką masz w menu.
@Matslom Niczego nie rozumiem z tego JS, nie potrafię tego podstawić
Metoda prób i błędów.

Spróbuj sam, pomyśl logicznie kiedy jaka akcja ma się wykonać, potem jeśli coś Ci nie wyjdzie, przedstaw tutaj zmodyfikowany kod wraz z konsolą błędów.
Prośby na PW dotyczące wsparcia z problemami będą ignorowane. Pomoc poza forum - odpłatna; kontakt: [email protected].
Proszę Was <3

Kod był dobry

Lecz brakowało w nim "kropki" przed klasą : D
Wracając, jak mogę przyśpieszyć pokazywanie okna to trybu natychmiastowego
slideToggle jak i slideUp jako pierwszy parametr przyjmuje czas trwania. Wszystko w dokumentacji jest opisane wystarczy wyszukać daną funkcję.
http://api.jquery.com/slidetoggle/#slideToggle-duration-complete
http://api.jquery.com/slideup/#slideUp-duration-complete
Zmieniłem oba parametry na 1 i nie odczuwalne
Pokaż jakiekolwiek demo tego menu.
Skorzystałem z 

Kod:
<script>
jQuery(function() {
    var button = jQuery('#loginButton');
    var box = jQuery('#loginBox');
    var form = jQuery('#loginForm');
    button.mouseup(function(login) {
        box.toggle();
        button.toggleClass('active');
    });
    form.mouseup(function() { 
        return false;
    });
    jQuery(this).mouseup(function(login) {
        if(!(jQuery(login.target).parent('#loginButton').length > 0)) {
            button.removeClass('active');
            box.hide();
        }
    });
});
</script>


Użytkownicy przeglądający ten wątek:

1 gości