Hoi,
Ik heb een webpagina met daarin een aantal menu-tabs. Vroeger laadde ik die allemaal in 1x in waarna ik met een javascriptje de boel kon showhiden. Probleem was dat sommige pagina's erg zwaar en dus traag werden. Daarom laadt ik nu de inhoud van de tabbladen in met AJAX-calls. Ik gebruik daarbij de volgende logica:
Waarom heb ik die erin zitten? Omdat de HTML die middels de ajax-calls wordt aangeroepen vaak ook images bevat, die ook even tijd moeten krijgen om te laden. Het zou natuurlijk veel mooier zijn als mijn script zelf kon meten wanneer een tabblad (inclusief images!) geladen is. Een soort onload-event voor ajax-calls INCLUSIEF resources etc dus.
So far heb ik nog niks kunnen vinden, iemand enig idee?
PS ik gebruik geen libraries! (en sta daar ook niet voor open, is een andere discussie)
Ik heb een webpagina met daarin een aantal menu-tabs. Vroeger laadde ik die allemaal in 1x in waarna ik met een javascriptje de boel kon showhiden. Probleem was dat sommige pagina's erg zwaar en dus traag werden. Daarom laadt ik nu de inhoud van de tabbladen in met AJAX-calls. Ik gebruik daarbij de volgende logica:
- Indien de URL een anchor bevat, laadt die eerst en toon die als actieve tab (handig voor formulieren die weer op dezelfde tab moeten uitkomen, linkjes uit de zoekmachine etc), zoniet laadt het eerste tabblad.
- Indien de muiscursor idle is, laadt na 2 seconden het volgende tabje, daarna het 3e enz.
- Als een user op een tabje klikt dat nog niet geladen is dan haalt ie de inhoud daarvan op alvorens de rest van de tabbladen op volgorde af te werken.
Waarom heb ik die erin zitten? Omdat de HTML die middels de ajax-calls wordt aangeroepen vaak ook images bevat, die ook even tijd moeten krijgen om te laden. Het zou natuurlijk veel mooier zijn als mijn script zelf kon meten wanneer een tabblad (inclusief images!) geladen is. Een soort onload-event voor ajax-calls INCLUSIEF resources etc dus.
So far heb ik nog niks kunnen vinden, iemand enig idee?
PS ik gebruik geen libraries! (en sta daar ook niet voor open, is een andere discussie)