Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

javascript vertraagt inladen site

Anoniem
M Bruinsma
7 antwoorden
  • Hallo,

    Op mijn site worden 2 javascripts uitgevoerd.
    De script staan op een andere site, zie onderstaande voorbeeld:

    <script language="JavaScript" src="www.weeronline.nl/nl_tips.js">
    </script>

    het nadeel van deze manier, is dat mijn site erg vertraagd wordt,
    want eerst moet de info van www.weeronline.nl opgehaald worden,
    daarna wordt pas mijn site vertoond. Ik dacht deze probleem op te lossen
    door een timeout in te bouwen, zodat mijn site alvast getoond wordt en daarna na 2 seconden wordt pas de javascript uitgevoerd. Dat lukt mij ten dele. Wie kan mij hierbij helpen?

    gr,
    Martin Bruinsma
    webmaster www.bustersview.nl
  • wat heb je nu, waar gaat het fout?
    voorbeeldcode?

    t.

    ps:
    Nieuw in Webprogrammeren & scripting? Lees dit eerst..., vooral punt 3.
  • Dat javascript bestandje is niet zo heel erg groot. Dat zou geen vertragingen moeten opleveren. Maar ik heb het is bekeken ( http://home.weeronline.com/cgi-bin/nph-h?PLZ=8362&PLZN;=Nederland&L;=nl ), misschien zou je gewoon het belangrijkste eruit kunnen halen? Want dat javascript gaan ze niet dagelijks updaten lijkt me :).

    (ot: op je site krijg ik bij het bovenste menu een scrollbar met mozilla 1.31)

    -termin8or
  • Ik heb eens gekeken naar de javascript die weeronline geeft, en het zijn allemaal document.writeln 's. De browser zal dus altijd moeten wachten op dat stukkie script, omdat het rechtstreeks content in het document schrijft.

    Je kunt dus het beste dat scriptje aan het eind van je pagina zetten, als je wil dat je pagina niet afhankelijk wil zijn van de snelheid van weeronline.

    Als je dat ding dan bovenaan je pagina wil hebben, dan zou je zoiets kunnen proberen:
    Stop het javascript in een div met een unieke ID. <div id="weeronline"><script src="blahblah"></script></div>
    Met css kun je dan die div absoluut positioneren. Nadeel is wel dat deze div dan niet meer meedoet in de normale flow van het document, waardoor het andere content kan overlappen. Zoiets:#weeronline{top:5px;left:10px;z-index:2;}
    Als de div wel mee moet doen met de flow van het document, dan zou je dat met dom-scripting kunnen doen.
  • Hallo,

    dit was mijn probeerversie:

    <SCRIPT LANGUAGE="JavaScript">
    <!–
    function redirect()
    {
    var x = "<script language = 'javascript' src=";
    var y = "><\/script>";
    var t = "";
    t += x + "http://home.weeronline.com/cgi-bin/nph-h?PLZ=8362&PLZN;=Nederland&L;=nl" + y;
    document.write(t);
    }

    setTimeout("redirect();", 3000);
    //–>
    </SCRIPT>

    Dit werkt op zich wel, maar dan krijg ik de output op een nieuwe venster, en dat wil ik niet.




    [quote:0dfeb241f9="teacher"]wat heb je nu, waar gaat het fout?
    voorbeeldcode?

    t.

    ps:
    Nieuw in Webprogrammeren & scripting? Lees dit eerst..., vooral punt 3.[/quote:0dfeb241f9]
  • Dat zal niet gaan werken.

    Heb even een voorbeeldje gemaakt dat zou moeten werken:

    [code:1:e2ba7f16c8]
    <html><head><title>Untitled</title></head>
    <body>
    <div id="hier" style="background-color:green;"></div>
    <script type="text/javascript">
    function weeronline(){
    document.getElementById('hier').innerHTML=document.getElementById('weeronline').innerHTML;
    document.getElementById('weeronline').style.display='none';
    }
    window.onload=weeronline;
    </script>
    <div id="weeronline">
    <script type="text/javascript" src="http://home.weeronline.com/cgi-bin/nph-h?PLZ=8362&PLZN;=Nederland&L;=nl">
    </script></div>
    </body></html>
    [/code:1:e2ba7f16c8]

    De truuk is dus om het script van weeronline aan het einde van je document te zetten, dan wordt je eigen content alvast weergegeven.
    Op het moment dat weeronline js is ingeladen, dan wordt het onload event afgevuurd en word de weeronline functie uitgevoerd en zet de inhoud van de html van weeronline in div id="hier".
  • Hoi,

    Bedankt voor je hulp, ik heb de code even snel getest en het werkt
    inderdaad. Nu ga ik snel de code implementeren in mijn website. :D

    gr,
    Martin Bruinsma



    [quote:b1aa03bbb9="hulpje"]Dat zal niet gaan werken.

    Heb even een voorbeeldje gemaakt dat zou moeten werken:

    [code:1:b1aa03bbb9]
    <html><head><title>Untitled</title></head>
    <body>
    <div id="hier" style="background-color:green;"></div>
    <script type="text/javascript">
    function weeronline(){
    document.getElementById('hier').innerHTML=document.getElementById('weeronline').innerHTML;
    document.getElementById('weeronline').style.display='none';
    }
    window.onload=weeronline;
    </script>
    <div id="weeronline">
    <script type="text/javascript" src="http://home.weeronline.com/cgi-bin/nph-h?PLZ=8362&PLZN;=Nederland&L;=nl">
    </script></div>
    </body></html>
    [/code:1:b1aa03bbb9]

    De truuk is dus om het script van weeronline aan het einde van je document te zetten, dan wordt je eigen content alvast weergegeven.
    Op het moment dat weeronline js is ingeladen, dan wordt het onload event afgevuurd en word de weeronline functie uitgevoerd en zet de inhoud van de html van weeronline in div id="hier".[/quote:b1aa03bbb9]

Beantwoord deze vraag

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.