Position fixed puis relative

Fermé
Thomas - 25 nov. 2014 à 22:04
animostab Messages postés 2829 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 11 novembre 2019 - 26 nov. 2014 à 14:37
Bonsoir,

Depuis quelques heures je cherche sans résultat un moyen pour changer le paramètre position d'un div, pour le passer de fixed à relative en fonction de l'endroit où l'on se trouve sur la page

Le but est le suivant:

On commence la navigation, la barre des menus est en haut; en fixed; elle suit notre défilement verticale jusqu'à un certain point dans la page où elle va s'arrêter (comme bloquée), et nous pouvons continuer de descendre, mais elle n'est plus là. Elle est plus haut.

En espérant avoir été clair dans mes explications,

Merci,
Thomas
A voir également:

3 réponses

animostab Messages postés 2829 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 11 novembre 2019 738
Modifié par animostab le 26/11/2014 à 02:46
Salut

voici la solution en jquery / css

ton div :
<div id="menu"></div>
ton css le mets en position fixed :
#menu {position:fixed;}
et rajoute cette ligne css après celle de #menu
.relative{position:relative;}

dans le head tu colles ce code

<script src="http://code.jquery.com/jquery-1.8.3.min.js"></script>

<script type="text/javascript" language="javascript">
$(window).scroll(function() {
var scroll = $(window).scrollTop();
if (scroll >= 400) {
$("#menu").addClass("relative");
} else {
$("#menu").removeClass("relative");
}
});
</script>


if (scroll >= 400) correspond à 400 pixel de scroll vertical dans la fenêtre, à changer selon ce que tu veux comme position qui provoque le changement de fixed à relative

Un petit merci vaut mieux qu'une grande ignorance !
Donc si votre sujet est résolu une réponse avec merci c'est pas de refus.
1
Merci! Exactement ce que je cherchais!
0
animostab Messages postés 2829 Date d'inscription jeudi 10 mars 2005 Statut Membre Dernière intervention 11 novembre 2019 738
26 nov. 2014 à 14:37
Pas de quoi c'est une question qui revient souvent
0