Archief - Verschil in laden tussen IE en andere browsers?

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

passero

Legacy Member
We hebben hier iets heel raars voor...
In IE onze pagina's zien er goed uit, alle in alle browsers eigenlijk maar het is precies of enkel in IE worden ze goed geladen.

In IE krijgen we heel de pagina op dezelfde tijd te zien. Bij firefox, mozilla,chrome,safari zien we een deel van de pagina en na een fractie van een seconde komt de rest van de pagina door.

Mijn idee is dat al de andere browsers de HTML tonen die ze reeds ontvangen hebben terwijl IE pas toont als alles is doorgekomen.
Ik ben hier echter niet zeker van maar kan iemand dat bevestigen of ontkrachten? Is er iets waarmee ik kan forceren om pas de pagina te tonen als alles ontvangen is?

Ik vind het trouwens raar dat enkel IE dit niet heeft en alle andere browsers wel. Zowel IE6 als 7 doet het "goed".

passero

Legacy Member
ok... kheb het gevonden maar kvind het heeeel bizar.

Ergens in mijn code staat er:

<script language="javascript" scr="....."/>

Die url is eigenlijk een procedure bij ons die uitgevoerd wordt.

Wanneer ik echter
<script language="javascript>
executeProcedure...
</script>

Dus dat de procedure de javascript op de html pagina output ipv appart via een src doet, dan gaat het wel. Steekt firefox een vertraging op het uitvoeren van javascript via src en niet als het binnen gewone <script> tags zit?

Dx-Solutions

Legacy Member
passero zei:
ok... kheb het gevonden maar kvind het heeeel bizar.

Ergens in mijn code staat er:

<script language="javascript" scr="....."/>

Die url is eigenlijk een procedure bij ons die uitgevoerd wordt.

Wanneer ik echter
<script language="javascript>
executeProcedure...
</script>

Dus dat de procedure de javascript op de html pagina output ipv appart via een src doet, dan gaat het wel. Steekt firefox een vertraging op het uitvoeren van javascript via src en niet als het binnen gewone <script> tags zit?

Interne javascript:
Deze laadt samen met de HTML, dus is altijd sneller.

Externe javascript:
Deze vraagt een extra get van de browser, wat dus in principe iets trager is, het is natuurlijk beter te onderhouden.

Grote externe js comprimeer je best, maar in tijden van ADSL en kabel zou dat niet zoveel verschil mogen maken. Zelf ga ik ook altijd voor externe js

passero

Legacy Member
Euhm, het gegenereerde javascript is 20lijntjes lang max :D

En het is dynamisch want het is het javascript voor het opbouwen van een menu en daarvoor gaan we eerst naar de DB. Het is dus geen statisch javascriptje.

Of ik nu inline of via scr werk, de execution time zou hetzelfde moeten zijn maar toch... Het is raar dat het in IE6,IE7 en opera perfect werkt maar in ff,chrome,safari zit er een delay op. Daar wordt eerst een deel van de pagina getoond en dan pas het JS uitgevoerd terwijl in IE en opera, de pagina pas getoond wordt als alles is uitgevoerd. Ofwel gaat het zodanig snel...

Pas als ik de code inline zet werkt het in ff,chrome en safari ook zo snel.

passero

Legacy Member
even een hersenspinsel dat misschien dit fenomeen kan verklaren...

Kan het zijn dat firefox en andere een javascript via src="...." asynchroon laadt zodat de verdere html ondertussen kan geladen worden terwijl een andere thread het JS ophaalt en dat IE6 en 7 en opera dat niet doen? zodat die eerst het JS ophalen en dan pas verder doen met de html? Dit lijkt mee deftige verklaring maar ik kan hier geen info rond vinden

Dx-Solutions

Legacy Member
passero zei:
even een hersenspinsel dat misschien dit fenomeen kan verklaren...

Kan het zijn dat firefox en andere een javascript via src="...." asynchroon laadt zodat de verdere html ondertussen kan geladen worden terwijl een andere thread het JS ophaalt en dat IE6 en 7 en opera dat niet doen? zodat die eerst het JS ophalen en dan pas verder doen met de html? Dit lijkt mee deftige verklaring maar ik kan hier geen info rond vinden

Dat klopt idd, ze hebben ieder hun eigen manier om dit te verwerken.

Er bestaan wel dirty tricks om dit op te vangen zoals onload en toestanden, moet je wel per browser apart gaan doen, dus het zijn en blijven dirty tricks.

passero

Legacy Member
mja kheb het opgelost door het inline te zetten. Dat werkt in alle browsers. Het is wel niet de properste manier van werken maar het werkt.
Jammer dat er zo geen attribuut is waarin je dat zou kunnen aangeven of het asynchroon of niet mag zijn.

Fraggie

Legacy Member
In Opera kan je instellen of hij eerst de pagina moet laden en dan moet renderen, of tijdens het laden al direct moet rederen. Als je de tweede optie kiest, dan kan het gebeuren dat bepaalde dingen achterkomen of plots van plaats veranderen.

Curahee Q

Legacy Member
Wat stelt een fractie van een seconde voor? Bij mij duurt het ook 2 seconden (of soms ietsje langer) voordat heel 9lives is geladen hoor. Ik weet niet waarom je dat persé wilt, maar ik zou er persoonlijk niet veel mee inzitten.

passero

Legacy Member
ik zit er persoonlijk ook niet in maar mijne baas maakt er een GROOT probleem van en vind dat we dat niet kunnen maken naar de klanten toe dat ze onze website met zo een vertraging zien...

Cycloon

Legacy Member
Sommige zaken kan je nu eenmaal niet volledig naar je hand stellen (zoals dit probleem) en daar zal je baas mee moeten leven. Natuurlijk is de vraag hoe lang het duurt voor die pagina geladen is. Als het echt redelijk lang duurt en het is een website met veel bezoekers die toch wel belangrijk is dan kan ik het wel begrijpen dat zoiets zoveel mogelijk moet weggewerkt worden.

Ben je trouwens zeker dat er nergens een bug zit in je javascript die alle browser buiten IE even laat 'vastlopen'?

dJeez

Legacy Member
Dan vermoed ik toch vrij sterk dat je dat stuk javascript dat wordt uitgevoerd niet aan de onload event van de pagina hebt gehangen... Want dan zou je dat in principe niet aan de hand mogen hebben. De onload event gebruiken is trouwens allesbehalve een "dirty trick", maar net bedoeld om op een standaardmanier te gaan werken :p.

Dx-Solutions

Legacy Member
dJeez zei:
Dan vermoed ik toch vrij sterk dat je dat stuk javascript dat wordt uitgevoerd niet aan de onload event van de pagina hebt gehangen... Want dan zou je dat in principe niet aan de hand mogen hebben. De onload event gebruiken is trouwens allesbehalve een "dirty trick", maar net bedoeld om op een standaardmanier te gaan werken :p.

Niet alle browsers behandelen een onload event op dezelfde manier.

Meestal heb je die problemen maar als je meerdere externe .js files hebt die allemaal, of enkele ervan, het onload event moeten gebruiken.

Vandaar m'n "dirty trick" opmerking. :)
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan