Bonjour à tous,
Je travaille actuellement à la refonte du site de ma compagne, dont vous pouvez voir le chantier ici.
SI vous consultez cette page, vous remarquerez que par moments, le clic sur le bloc texte en bas ('.content-footer') qui permet de déplier/replier celui-ci via un slideToggle, provoque parfois des effets de "yoyo" !
Cela fait plusieurs jours que je suis dessus, et j'ai le sentiment que c'est la fonction slideToggle en elle-même qui pose problème... Mais malgré mes nombreuses tentatives, pas moyen de corriger cela
Voici donc mon bout de code, en espérant qu'il en inspirera certains... Merci donc par avance aux âmes charitables pour leur aide !
Je travaille actuellement à la refonte du site de ma compagne, dont vous pouvez voir le chantier ici.
SI vous consultez cette page, vous remarquerez que par moments, le clic sur le bloc texte en bas ('.content-footer') qui permet de déplier/replier celui-ci via un slideToggle, provoque parfois des effets de "yoyo" !
Cela fait plusieurs jours que je suis dessus, et j'ai le sentiment que c'est la fonction slideToggle en elle-même qui pose problème... Mais malgré mes nombreuses tentatives, pas moyen de corriger cela
Voici donc mon bout de code, en espérant qu'il en inspirera certains... Merci donc par avance aux âmes charitables pour leur aide !
// FOLDING sur le bloc d'une page single
var contentfooterFolding = function() {
$('.content-footer').each(function() {
var contentHeight = $(this).parent('#content').height();
var thisHeight = $(this).height();
// On réduit le panneau par défaut quand la hauteur d'écran est trop réduite
if( contentHeight <= thisHeight*2 ) {
$(this).not('.folded').addClass('folded').find('.description').slideToggle('fast');
}
// Comportement
$(this).on('click', '.foldTrigger', function() {
$(this).closest('.content-footer').toggleClass('folded').find('.description').slideToggle('fast');
});
});
};
$(document).ready(function(){
// FOLDING sur le bloc d'une page single
contentfooterFolding();
// ON RESIZE
$(window).resize(function() {
contentfooterFolding();
});
});