Un code en jquery qui permet de d'incrémenter un valeur et réinitialise
Résolu
rasielblas
Messages postés
143
Statut
Membre
-
rasielblas Messages postés 143 Statut Membre -
rasielblas Messages postés 143 Statut Membre -
Bonjour,
Je sollicite votre aide, en fait j'aimerais juste avoir un code qui s'incrémente lorsqu'on scroll le document et se réinitialise quand la valeur atteint la valeur 10 par exemple, puis après avoir réinitialisé à zéro la valeur s'incrémente de nouveau puis se réinitialise quand elle atteint la valeur 10 et ainsi de suite...
Ce que je veux c'est en jquery quelque chose du genre
Je sollicite votre aide, en fait j'aimerais juste avoir un code qui s'incrémente lorsqu'on scroll le document et se réinitialise quand la valeur atteint la valeur 10 par exemple, puis après avoir réinitialisé à zéro la valeur s'incrémente de nouveau puis se réinitialise quand elle atteint la valeur 10 et ainsi de suite...
Ce que je veux c'est en jquery quelque chose du genre
if scroll {
top=top+1
if top=10 {
top=0
if scroll{
top=top+1
if top=10{
top=0
}
.....et ainsi de suite
}
}
}
Configuration: Windows / Firefox 65.0
1 réponse
-
Bonjour,
Ce qui peut t'aider, c'est le modulo (% en javascript).
Si tu écris{ top++; top = top % 10; }
, tu es sûr que top sera incrémenté et que sa valeur sera toujours ramenée à 0 quand elle atteindra 10.
Xavier-
Merci votre code fonctionne mais ce que j'aimerais c'est qu'après initialisation la valeur ne s'incrémente que lorsqu'il y a un évènement qui le déclenche par exemple si on clique alors la valeur augmente et une fois arrivé à 10 alors la valeur s'initialiste a zéro et s'arrête, mais quand on clique de nouveau alors la valeur s'incrémente de nouveau et ainsi de suite...
-
-
Bon c'est d'accord mais c'est un peu complexe à expliquer! En fait j'ai un code en jquery qui permet de récupérer la centre du document, car j'ai un bouton qui permet de créer un élément texte dans un pdf. Et ce que je veux c'est qu'une fois que le texte est créer elle se positionne toujours au centre de la document. Mais le problème c'est quand je scrolle alors je perd le centre du document. Et j'ai créer ce code qui permet de récupérer la centre de la document et j'aimerais que ce valeur se réinitialise à chaque changement de la page. Voici mon code:
$('#mainContainer').scroll(function(event){ // Valeur de defilement lors du chargement de la page windowScroll = $('#mainContainer').scrollTop(); // Mise a jour du positionnement en fonction du scroll if( windowScroll >= fixedLimit ){ obtenirlecentredelapage =LAST_SCROLL_OFFSET; var topPos = $("#rocket_dummy")[0].getBoundingClientRect().top //console.log(topPos); //alert(LAST_SCROLL_OFFSET); rocket.addClass('fixed'); } else { rocket.removeClass('fixed'); } if( rocket.hasClass('fixed') ){ if( windowScroll > LAST_SCROLL_OFFSET ){ // DOWN firetop.addClass('on'); firebottom.removeClass('on'); } else { // UP firetop.removeClass('on'); firebottom.addClass('on'); } } // Arret setTimeout(function(){ if( new Date().getTime() - LAST_SCROLL_TIME > 50 ){ firetop.removeClass('on'); firebottom.removeClass('on'); } },70); // Mise a jour variables //LAST_SCROLL_OFFSET = windowScroll; });
Ce code permet d'obtenir la centre de la document et voici la résultat en mode console:

Comme vous le voyez sur cette image la valeur du centre s'incrémente lorsqu'on scrolle la page, et je veux qu'une fois arrivé à la page numéro 2 alors la valeur se réinitialise à zéro et lorsqu'on scrolle la page numéro 2 alors elle s'incrémente depuis zéro jusqu'à la page numéro 3. Et ainsi de suite.
Donc voici le code à rectifier et à insérer:
if(obtenirlecentredelapage> 1016){ obtenirlecentredelapage=0; }
Ouf c'est un peu beaucoup tous cela mais j'espère que vous avez compris! :-) -
Ca y est, j'ai réussi à faire fonctionner mon code correctement avec votre super modulo! Voici mon code final:
if(obtenirlecentredelapage> 1132){ function resetScrollPos(selector) { var divs = document.querySelectorAll(selector); for (var p = 0; p < divs.length; p++) { if (Boolean(divs[p].style.transform)) { console.log("mande"); } else { obtenirlecentredelapage=obtenirlecentredelapage%1016; } } } resetScrollPos('#mainContainer');
Merci beaucoup pour votre aide, je marque cette discussion résolu est à la prochaine, merci encore ;-)
-