Maison >interface Web >js tutoriel >Comment implémenter l'effet de changement de défilement des images en JavaScript ?

Comment implémenter l'effet de changement de défilement des images en JavaScript ?

PHPz
PHPzoriginal
2023-10-20 17:51:151650parcourir

JavaScript 如何实现图片的滚动切换效果?

Comment obtenir l'effet de changement de défilement des images avec JavaScript ?

Dans la conception Web moderne, l'effet de changement de défilement d'image est l'un des éléments de conception couramment utilisés, qui peut ajouter de la dynamique et de la vivacité à la page Web. JavaScript, en tant que langage de script couramment utilisé, peut nous aider à atteindre cet effet. Dans cet article, je présenterai une méthode permettant d'utiliser JavaScript pour obtenir un effet de changement de défilement d'image et fournirai des exemples de code correspondants.

Tout d’abord, nous devons préparer une structure HTML pour afficher les images. Le code spécifique est le suivant :

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <style>
        .slider {
            width: 600px;
            height: 300px;
            overflow: hidden;
            position: relative;
        }
        
        .slider img {
            width: 600px;
            height: 300px;
            position: absolute;
            transition: transform 0.5s ease-in-out;
        }
    </style>
</head>
<body>
    <div class="slider">
        <img src="image1.jpg" alt="Image 1">
        <img src="image2.jpg" alt="Image 2">
        <img src="image3.jpg" alt="Image 3">
    </div>

    <script src="slider.js"></script>
</body>
</html>

Dans le code ci-dessus, nous avons créé un élément div nommé "slider" avec une largeur de 600px et une hauteur de 300px. L'élément div possède l'attribut overflow:hidden, qui masque les images qui dépassent la bordure. Et nous définissons la largeur et la hauteur de l'image en CSS, ainsi que les propriétés de positionnement absolues de l'image, afin qu'elles se chevauchent. De plus, nous avons également ajouté un effet de transition à l'image afin qu'il y ait un effet d'animation fluide lorsque l'image change.

Ensuite, nous devons utiliser JavaScript pour obtenir l'effet de changement d'image. Nous pouvons créer un fichier JavaScript nommé "slider.js" et copier et coller le code suivant dans le fichier :

window.addEventListener('DOMContentLoaded', function () {
    var slider = document.querySelector('.slider');
    var images = slider.getElementsByTagName('img');
    var currentIndex = 0;
    var intervalId;

    function changeImage() {
        currentIndex = (currentIndex + 1) % images.length;
        for (var i = 0; i < images.length; i++) {
            images[i].style.transform = 'translateX(' + (i - currentIndex) * 100 + '%)';
        }
    }

    intervalId = setInterval(changeImage, 2000);
});

Dans le code ci-dessus, nous obtenons d'abord l'élément div avec le nom de classe "slider" et les éléments All img. Ensuite, nous définissons une variable "currentIndex" pour suivre l'index de l'image actuellement affiché et initialisons intervalId avec l'ID d'un minuteur.

Ensuite, nous créons une fonction appelée "changeImage" pour changer d'image. Dans cette fonction, nous utilisons une boucle pour parcourir le tableau d'images et définissons un attribut de transformation pour chaque image afin d'obtenir l'effet de défilement de l'image. En définissant la valeur TranslateX sur (i - currentIndex) * 100 %, nous pouvons conserver l'image actuellement affichée au milieu pendant que les autres images défilent vers la gauche et la droite.

Enfin, nous utilisons la fonction setInterval pour appeler régulièrement la fonction changeImage afin d'obtenir un changement automatique d'image. Dans cet exemple, nous basculons entre les images à intervalles de 2 secondes.

Après avoir terminé le code ci-dessus, nous lions le fichier JavaScript au fichier HTML, puis nous pouvons visualiser l'effet de changement de défilement de l'image dans le navigateur.

Pour résumer, en utilisant JavaScript, nous pouvons facilement obtenir l'effet de changement de défilement des images. En récupérant les éléments dans la structure HTML et en utilisant des styles CSS et des fonctions JavaScript, nous pouvons obtenir une commutation fluide des images. J'espère que cet article pourra aider les lecteurs à comprendre et à maîtriser cette implémentation.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn