2013-02-12 4 views
0

J'utilise flexslider et je fais un calcul de la hauteur/posn d'un autre élément via jquery quelque chose comme ci-dessous. Le .flexslider ul li img ne fonctionne pas bien. Je dois m'assurer que la lame du FlexSlider est complètement chargée pour que je puisse mesurer sa hauteur, mais je ne peux pas la cibler. J'ai prouvé le concept en utilisant setTimeout() mais je ne peux pas savoir combien de temps l'image prendra à charger sur un serveur donné, donc je veux l'avoir dépend de si le flexslider est à ses dimensions finales. Comment puis-je faire ce travail.Détecter quand la première glissière a été chargée

Callback (de la documentation): Je vois de la page de documentation start: function(){} est une propriété qui « Se déclenche lorsque le curseur charge la première diapositive » mais je ne maintenant comment l'utiliser. Je suppose que cela pourrait être un meilleur moyen de contourner cela.

var resizeBackground = $('.flexslider ul li img').load(function(){ 

$('.home .skin-background').css({ 
    'display': 'block', 
    'height': $fpTop.outerHeight(true) + $quickBar.height() - 1 + 'px', 
}); 

}); 

$(window).load(resizeBackground).resize(resizeBackground); 

Répondre

1

Ce que je fini par faire était un peu compliqué à cause du code de modification de taille que je voulais aussi, mais au fond, je fini par mettre le code ci-dessus en fonction et au lieu de faire appel à la charge je l'ai appelé d'où je flexslider instancié comme ceci

$('.flexslider').flexslider({ 

    ... etc ... 

    start: function(slider){ 

    ... etc ... 

     sizeSkin(); // This is the function that I put the code in 

    } 
}); 
Questions connexes