Maison > interface Web > js tutoriel > Compétences code_javascript de mise en œuvre de l'effet de défilement fluide et transparent JS

Compétences code_javascript de mise en œuvre de l'effet de défilement fluide et transparent JS

WBOY
Libérer: 2016-05-16 15:01:43
original
1564 Les gens l'ont consulté

Dans cet article, nous implémentons l'effet publicitaire défilant en JS pur.

Compétences code_javascript de mise en œuvre de leffet de défilement fluide et transparent JS

Montrons d'abord le produit fini :

Le premier est le style de la page Web :

 #demo {

 background: #FFF;

 overflow:hidden;

 border: 1px dashed #CCC;

 width: 1280px;

 height:200px;

 }

 #demo img {

 border: 3px solid #F2F2F2;

 }

 #indemo {

 float: left;

 width: 800%;

 }

 #demo1 {

 float: left;

 }

 #demo2 {

 float: left;

 }
Copier après la connexion

La disposition est la suivante :

 <div id="demo">

 <div id="indemo">

 <div id="demo1">

 <a href="#"><img  src="banner.jpg" border="0" / alt="Compétences code_javascript de mise en œuvre de l'effet de défilement fluide et transparent JS" ></a>

 <a href="#"><img  src="banner2.jpg" border="0" / alt="Compétences code_javascript de mise en œuvre de l'effet de défilement fluide et transparent JS" ></a>

 </div>

 <div id="demo2"></div>

 </div>

 </div>
Copier après la connexion

Implémentation JS spécifique :

 <script>

 var speed=10;

 var tab=document.getElementById("demo");

 var tab1=document.getElementById("demo1");

 var tab2=document.getElementById("demo2");

 tab2.innerHTML=tab1.innerHTML;

 function Marquee(){

 if(tab2.offsetWidth-tab.scrollLeft==0)

 tab.scrollLeft-=tab1.offsetWidth

 else{

 tab.scrollLeft++;

 }

 }

 var MyMar=setInterval(Marquee,speed);

 tab.onmouseover=function() {clearInterval(MyMar)};

 tab.onmouseout=function() {MyMar=setInterval

 (Marquee,speed)};

 </script>
Copier après la connexion

Ce qu'il faut noter ici est :

scrollLeft représente la largeur de la page cachée sur le côté gauche de la barre de défilement lorsque la page défile vers la droite à l'aide de la barre de défilement.

offsetWidth est la largeur visible de l'objet, y compris les barres de défilement et autres bords, qui changera avec la taille d'affichage de la fenêtre.

La méthode setInterval() peut appeler une fonction ou calculer une expression selon la période spécifiée (en millisecondes). La méthode setInterval() continuera à appeler la fonction jusqu'à ce que clearInterval() soit appelée ou que la fenêtre soit fermée.

Ce sera plus facile à comprendre une fois que vous aurez compris la mise en œuvre spécifique.

Le principe de mise en œuvre est le suivant : copiez d'abord le contenu qui doit défiler. Lorsque le contenu affiché par le div droit est le même que le contenu de l'ombre gauche, le contenu de l'ombre sur le côté gauche du conteneur parent est affiché de cette manière, le contenu de l'ombre gauche est affiché et le contenu. à droite est à nouveau masqué. Si le contenu affiché sur le côté droit est inférieur au contenu masqué sur le côté gauche, le conteneur parent continuera à être déplacé vers la gauche pour masquer les ombres. Une chose à noter est que puisque les deux images sont placées sur le côté gauche en même temps, lorsque la moitié du côté droit est affichée, l'ombre cachée sur le côté gauche sera entièrement affichée, et parce que le contenu affiché à droite Le côté est différent du contenu du côté gauche. Le contenu de gauche est le même, donc l'effet de défilement circulaire est obtenu.

Un défilement fluide est obtenu de cette manière.

Le code d'implémentation de l'effet de défilement fluide et transparent JS ci-dessus est tout le contenu partagé par l'éditeur. J'espère qu'il pourra vous donner une référence et j'espère que vous soutiendrez Script Home.

Étiquettes associées:
js
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal