J'essaie de faire disparaître une sortie lorsque la page défile vers le bas (avec le défilement de page - et pas seulement avec un effet de fondu). J'ajuste l'opacité de la div lorsque la page défile à l'aide de ce code ici:
$(window).scroll(function() {
var scroll = $(window).scrollTop();
$('.logo_container').css({'opacity':( 100-scroll )/100});
});
Mon problème ici est que pour moi cela s’efface trop vite, je voudrais un fondu beaucoup plus subtil lorsque l’utilisateur défile. Quelqu'un peut-il penser à une meilleure logique pour faire disparaître en fondu un fondu plus lent et plus lent?.
voici un JSFIDDLE montrant mon code en action
Cela fonctionne très bien avec ce VIOLON avec une logique très simple. Utilisé ce morceau de jquery pour le faire fonctionner:
$(window).scroll(function () {
var scrollTop = $(window).scrollTop();
var height = $(window).height();
$('.logo_container, .slogan').css({
'opacity': ((height - scrollTop) / height)
});
});
(height - scrollTop)/height donne un ensemble de valeurs qui est forme linéaire 1 à 0.
Exemple:
height = 430px et scrollTop = 233px.
(height - scrollTop)/height donnera l'opacité environ 0,45.
jQuery animer
$(window).scroll(function() {
var scroll = $(window).scrollTop();
$('.logo_container, .slogan').stop().animate(
{opacity: (( 180-scroll )/100)+0.1},
"slow"
);
});
Transition CSS
.wrapper {
height:1000px
}
.logo_container {
background:red;
width:250px;
height:500px;
position:relative;
margin:0px auto;
transition: opacity 1s ease;
}
amélioration de la solution en modifiant cette partie ( 1000-scroll )/1000
j'espère que ça aide