Je travaille sur une page qui utilise des waypoints pour créer un div collant qui fait défiler la page avec la position: fixe jusqu'à ce qu'il atteigne le bas de son div parent. Le code im using fonctionne comme prévu jusqu'à ce que $ .waypoints ('refresh') soit appelé alors le div collant revient en haut de la page et perd sa position fixe.Jquery Waypoints Refresh
Heres le code:
$('#content').waypoint(function(event, direction){
if (direction === 'down') {
$(this).removeClass('sticky').addClass('bottomed');
}
else {
$(this).removeClass('bottomed').addClass('sticky');
}
}, {
offset: function() {
return $('#leftCol').outerHeight() - $('#content').outerHeight();
}
}).find('#leftCol').waypoint(function(event, direction) {
$(this).parent().toggleClass('sticky', direction === "down");
event.stopPropagation();
});
Où #leftCol est la div qui fait défiler la page et #content est sa mère div.
Le css J'est:
#content {
width: 975px;
height: auto;
position: relative;
margin-top: 10px;
margin-bottom: 20px;
min-height: 800px;
}
#leftCol {
position: absolute;
width: 974px;
}
.sticky #leftCol {
position:fixed !important;
top:0 !important;
left: 50% !important;
width: 974px !important;
margin-left: -488px;
}
.bottomed #leftCol {
position: absolute !important;
bottom: 0px;
}
Toutes les idées sur la façon de maintenir la position de #leftCol quand $ .waypoints (« rafraîchissement ») est appelé serait très apprécié.
Merci
Ah adorable, ça l'a fait! Merci pour une réponse si rapide – user1258303
Cela me donne un indice sur la façon dont je pourrais résoudre ma question. J'ai tout fonctionne plutôt bien, sauf avec le redimensionnement des fenêtres. http://stackoverflow.com/questions/18221351/debugging-jquery-waypoints-script-see-fiddle-cannot-find-bug –
Lisez à nouveau la première ligne de ma réponse. Tu fais toujours ça. Vous devriez avoir vos ** wrappers ** comme waypoints. – imakewebthings