Archief - Lazy Loader threshhold

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.

Carrion

Legacy Member
Ik ben hier wat aan het prutsen met de Lazy Loader maar m'n kennis van javascript is nogal beperkt :unsure:

Code:
<script type="text/javascript">

$("img.lazy").lazyload({
effect: "fadeIn"});

</script>

Het script werkt wel, maar ik zou willen dat de afbeelding pas iets later begint te verschijnen, dit moet dus met de threshold maar ik weet niet zo goed hoe / waar ik deze moet plaatsen

dit staat bij de uitleg van de lazy loader:

Code:
$("img.lazy").lazyload({ threshold : 200 });

Heb al verscheidene combinaties geprobeerd maar jammer genoeg geen succes. Iemand enige raad? Want ik neem aan dat dit ook zo in z'n werk gaat bij andere scripts dan en dan kan ik die kennis meenemen naar volgende projecten.

W0utR

Legacy Member
Die threshold zorgt er juist voor dat images vroeger gaan verschijnen, met de default settings worden images pas geladen als ze op het scherm staan, die threshold gaat ervoor zorgen dat de images geladen worden voor ze op het scherm komen.

Je threshold staat op 200, dat wilt zeggen dat images geladen worden vanaf ze binnen de 200px komen voor ze zichtbaar worden.

Ik ben trouwens niet helemaal mee wat je juist wilt doen, je wilt dus dat images iets later verschijnen? Dus als de gebruiker normaal een image zou zien wil je er geen tonen? Maar enkel een beetje later? Lijkt mij niet echt logisch.

Carrion

Legacy Member
Nee, het is de bedoeling dat de afbeeldingen die zich niet in de viewport bevinden niet getoond worden en dus pas getoond worden als je er naar toe scrolled.

W0utR

Legacy Member
Dat doet die lazy loader toch standaard? Afbeeldingen worden pas geladen wanneer ze zich binnen het viewport bevinden.

Carrion

Legacy Member
Verdikke, ge hebt gelijk. Ik heb die uitleg blijkbaar verkeerd gelezen en die threshold is inderdaad om ze eerder te tonen.

Dastardly

Legacy Member
om misschien toch nog even op uw originele vraag in te springen, zo goed als alle jquery extensies werken zoals hieronder:

HTML:
$(selector).functie( ); 
$(selector).functie( 'update' );
$(selector).functie( { optie1 : true, optie2: 'slow' } );

eerste is gewoon initialisatie met standaard opties. tweede is een bepaalde interne functie oproepen indien dat voorzien is (neem als voorbeeld een custom scrollbalk waarvan je de update methode oproept als je via JS html hebt toegevoegd). derde is zoals het geval jij hebt waar je een json array van settings meestuurd (die dan de standaard settings gaan overschrijven). dit is altijd in 't formaat :

HTML:
{
  parameter : waarde,
  parameter : waarde
}

belangrijk daar is zien dat je na uw laatste waarde geen komma zet. de JS engine van IE houd daar niet van. waarde kan bijvoorbeeld ook een functie zijn. dat zie je geregeld bij zaken die een tijdje duren (ajax call, animatie, ....) waar je dus bijvoorbeeld een functie kan uitvoeren na een bepaalde gebeurtenis.

HTML:
$(selector).functie({
  parameter : waarde,
  animationDone : function() {
    alert('the animation is done!');
  },
  parameter : waarde
});

om het voorbeeld van je beginpost te nemen:

HTML:
$("img.lazy").lazyload({
  effect: "fadeIn",
  threshold : 200
});

zo geef je dus beide mee.

dit is natuurlijk in grote lijnen. er zullen genoeg extensions zijn die meerdere overloads hebben. ik hoop dat je hiermee al iets verdan kan naar de toekomst toe.
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