xpatval Posté 3 Décembre 2020 Posté 3 Décembre 2020 Bonjour, Pour un menu de navigation que je souhaite fixe lorsque je scrolle, je règle l'opacité en fonction du nombre de pixel 'scrollé'. Ok, ça fonctionne. Par contre, je ne trouve pas la solution par une boucle de façon à ce que cette opacité soit modifiée graduellement. Avez-vous une idée ? Mon code basique...: document.addEventListener('scroll', function(e) { if (window.scrollY > 160) { document.getElementById('site-navigation').style.opacity = 0.5; } else document.getElementById('site-navigation').style.opacity = 1 }); Où site-navigation est mon ID css. Merci de vos réponses...
poulpe-bleu Posté 8 Décembre 2020 Posté 8 Décembre 2020 Bonjour, Cela dépend le type d'opacité que vous voulez, à savoir si c'est horizontal ou vertical, non ?
xpatval Posté 8 Décembre 2020 Auteur Posté 8 Décembre 2020 C'est juste l'opacité d'un élément, donc d'une barre de menu horizontale, en fonction d'un scroll bas et haut. J'ai juste fait celà: jQuery(document).ready(function( $ ){ var divs = $('#site-navigation'); $(window).scroll(function(){ var percent = $(document).scrollTop() / ($(document).height() - $(window).height()); if (percent < 0.8) { divs.css('opacity', 1 - percent); var numb = (1 - percent); } else { divs.css('opacity', numb); } }); });
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant