Bonjour je suis en train de faire un site one page avec scroll désactivé et passage d'une partie de la page à une autre avec une animation "transform: translateX (-100wv)". Cette animation s'active avec un click sur boutons.
L'animation fait donc glisser les parties de la page comme un slider :
Et voici l'animation keyframe :
Mon soucis concerne le javascript (je n'ai pas beaucoup de connaissances sur la matière). Lorsque je vais sur la partie 2 de mon one page "Portfolio" et que je clique sur "Contact" pour aller à la partie 3 celà renvoi l'animation à partir du début de la page vers la partie 3.
Transition actuelle : 2 -> 1 -> 2 -> 3
Transition voulue : 2 -> 3
Voici mon javascript :
J'espère avoir été assez clair
L'animation fait donc glisser les parties de la page comme un slider :
<body>
<header>
<div class="menu" id="a">
<p onclick="Accueil()">Accueil</p>
</div>
<div class="menu" id="b">
<p onclick="Portfolio()">Portfolio</p>
</div>
<div class="menu" id="c">
<p onclick="Contact()">Contact</p>
</div>
</header>
<main>
<div class="train">
<div class="accueil"></div>
<div class="portfolio"></div>
<div class="contact"></div>
</div>
</main>
</body>
Et voici l'animation keyframe :
@keyframes go0 {
0% {
transform: translateX(0vw);
}
100% {
transform: translateX(0vw);
}
}
@keyframes go1 {
0% {
transform: translateX(0vw);
}
100% {
transform: translateX(-100vw);
}
}
@keyframes go2 {
0% {
transform: translateX(0vw);
}
100% {
transform: translateX(-200vw);
}
}
Mon soucis concerne le javascript (je n'ai pas beaucoup de connaissances sur la matière). Lorsque je vais sur la partie 2 de mon one page "Portfolio" et que je clique sur "Contact" pour aller à la partie 3 celà renvoi l'animation à partir du début de la page vers la partie 3.
Transition actuelle : 2 -> 1 -> 2 -> 3
Transition voulue : 2 -> 3
Voici mon javascript :
function Accueil() {
// Ciblage
var train = document.querySelector('.train');
// Ajoute de la classe contenant l'animation
train.classList.add('go0');
train.classList.remove('go1')
train.classList.remove('go2')
}
function Portfolio() {
// Ciblage
var train = document.querySelector('.train');
// Ajoute de la classe contenant l'animation
train.classList.add('go1');
train.classList.remove('go0')
train.classList.remove('go2')
}
function Contact() {
// Ciblage
var train = document.querySelector('.train');
// Ajoute de la classe contenant l'animation
train.classList.add('go2');
train.classList.remove('go0')
train.classList.remove('go1')
}
J'espère avoir été assez clair