Do something after function is complete

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Java Developer / Domotica / Public Cloud / Verbete

Functieomschrijving Wil jij als Java Developer een bijdrage leveren aan het ontwikkelen van innovatie Java applicaties die het levensgeluk van patiënten in diverse zorginstellingen aanzienlijk verbeterd? Lees dan snel verder! Ontwikkelen van nieuwe applicaties in Public Cloud; Optimaliseren en verbeteren van bestaande applicaties in Private Cloud; Meedenken over verbeterprojecten; Maken en uitvoeren van Stress Testing; Ontwikkelen en verbeteren van de Mobile app. Functie-eisen Hbo werk- en denkniveau; Minimaal 5 jaar relevante werkervaring; Ervaring in Java 8; Kennis van Linux, Public- en Private Cloudtechnieken; Je bent communicatief erg sterk en kan tegen de nodige stress. Bedrijfsomschrijving Deze organisatie is al ruim

Bekijk vacature »

Danny von Gaal

Danny von Gaal

12/11/2017 10:36:05
Quote Anchor link
Ik heb een pagina gemaakt met 10 items uit mijn database en wanneer de pagina helemaal beneden aan het document is dan worden er 10 nieuwe items geladen en onderaan de pagina bijgevoegd. Dit blijft zich net zo vaak herhalen tot er geen items meer zijn.

Dit werkt prima tenzij het een keer even duurt voordat de items uit de database zijn geladen. Het scrollpunt blijft dan onderaan de pagina staan en blijft iedere keer 10 items onderaan bijvoegen en dit zijn soms heel veel items in een keer.

Ik wil dus dat de tweede Ajax post pas gebeurd wanneer LoadNewsPage(); echt items heeft geladen en weergeven want dan is de bodem van mijn pagina veranderd.
Iemand een idee?

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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function LoadNewsPage() {
    // Load Newspage
    var sessionlang            =    localStorage.getItem('Lang');
    var sessionmeasure        =    localStorage.getItem('Measurement');
    var sessionid            =    localStorage.getItem('Session');
    $.ajax({
        type: "POST",
        url: url + "/includes/page-news.php",
        data: {lang: sessionlang, measure: sessionmeasure, sessionid: sessionid},
        success: function(response){                    
            $("#page-news").html(response);
        }
    });
}

$(".footer-menu-news").click(function() {
    LoadNewsPage();
    if ($("#page-news").is(":visible")) {
        start    =    0;
        $(window).scroll(function() {
            if($(window).scrollTop() + $(window).height() == $(document).height()) {
                var sessionlang        =    localStorage.getItem('Lang');
                var sessionmeasure    =    localStorage.getItem('Measurement');
                var sessionid        =    localStorage.getItem('Session');
                start                 =     start + 10;
                var limit            =    10;
                $.ajax({
                    type: "POST",
                    url: url + "/formhandling/show_news.php",
                    data: {lang: sessionlang, measure: sessionmeasure, sessionid: sessionid, start: start, limit: limit},
                    success: function(response){        
                        $("#page-news .subbody").append(response);
                    }
                });
            }
        });
    }
});
Gewijzigd op 12/11/2017 10:37:05 door Danny von Gaal
 
PHP hulp

PHP hulp

14/12/2019 10:49:33
 
- Ariën -
Beheerder

- Ariën -

12/11/2017 11:27:43
Quote Anchor link
Hm... een Engelse titel ;-)?
 
Danny von Gaal

Danny von Gaal

12/11/2017 12:00:46
Quote Anchor link
Niet opgelet. In mijn hoofd is het programmeren altijd Engels. xD
Maar ik vraag me dus af hoe je er in javascript/JQuery vanuit kan gaan dat een ajax request voltooid is voor je iets anders kan doen.
Gewijzigd op 12/11/2017 12:28:40 door Danny von Gaal
 
Rob Doemaarwat

Rob Doemaarwat

12/11/2017 13:38:55
Quote Anchor link
Gewoon even een vlaggetje hijsen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
//bovenaan in javascript
var busy = false;
//in scroll event handler
if(!busy && scrollTopEnz){
  busy = true;
  $.ajax({
    success: function(){
      //doe ding
      busy = false;
    }
  })
}
 
Verwijderd 31683

Verwijderd 31683

12/11/2017 16:54:38
Quote Anchor link
Precies, houd bij of je bezig bent.
 
Danny von Gaal

Danny von Gaal

15/11/2017 10:45:02
Quote Anchor link
Thnx, dit lijkt te werken. :)
Ik had ook al eerder wat geprobeerd met een vlaggetje te maken maar kreeg het niet werkend. Ik controleerde toen op het vlaggetje na
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
if($(window).scrollTop() + $(window).height() == $(document).height()) {
ipv tegelijkertijd.

Misschien dat ik dat fout deed. thnx
Gewijzigd op 15/11/2017 10:45:37 door Danny von Gaal
 



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.