voeg element toe als scherm kleiner is dan

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Loek Lemmens

Loek Lemmens

09/11/2018 14:29:28
Quote Anchor link
Met jQuery wil ik een element toevoegen aan de body, dit mag gebeuren wanneer het scherm kleiner is dan.
Ik heb er een functie van gemaakt deze word geactiveerd bij dom ready en bij resize.
Bij resize gaat het mis, hij voegt er meerdere toe aangezien resize continu word geactiveerd als een gebruiker z'n scherm verkleind of vergroot.

Hoe kan ik dit oplossen?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$(document).ready(function(){
    responsive();
    
    $(window).on('resize', function(){
        responsive();
    });

    function responsive(){
        if($(window).width() < 780){
             $("body").append('<div class="sidemenu">Hallo</div>');
        }else{
             $(".sidemenu").remove();  
        }
    }
});
 
PHP hulp

PHP hulp

24/04/2024 09:20:09
 
Rob Doemaarwat

Rob Doemaarwat

09/11/2018 14:36:52
Quote Anchor link
Door een "vlaggetje" te gebruiken (zo noem je een variabele waarmee je bijhoud of iets wel/niet aan staat):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$(document).ready(function(){
    var hasSideMenu = false; //initieel geen side menu

    responsive();
    
    $(window).on('resize', function(){
        responsive();
    });

    function responsive(){
        if($(window).width() < 780){ //toon side menu
             if(!hasSideMenu) //heeft (nog) geen side menu
                 $("body").append('<div class="sidemenu">Hallo</div>');
             hasSideMenu = true; //nu wel
        }
        else if(hasSideMenu){ //heeft wel een side menu, maar moet weg
             $(".sidemenu").remove();  
             hasSideMenu = false; //geen side menu meer
        }
    }
});
 
Dennis WhoCares

Dennis WhoCares

09/11/2018 17:58:05
Quote Anchor link
je had ook gewoon je sidemenu standaard al in de html kunnen laten staan en hiden. dan kun je gewoon in responsive $(".sidemenu").show() en .hide() gebruiken :)
Je kan ook bootstrap gebruiken, daar zit alles al voor je ingebakken :)
Gewijzigd op 09/11/2018 17:58:34 door Dennis WhoCares
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.