L'exemple de cet article décrit la méthode d'utilisation de jquery pour obtenir l'effet d'affichage défilant des stores de page. Partagez-le avec tout le monde pour votre référence. Les détails sont les suivants :
1. Le code ici nécessite la prise en charge de jquery1.3 ou supérieur, comme indiqué ci-dessous :
jQuery.fn.extend((
Fonction($){
var l = 4,//Nombre de lignes de défilement
t=5000,//Après avoir fait défiler une fois, combien de temps faudra-t-il pour commencer à faire défiler la prochaine fois
rt=500,//Temps écoulé pour chaque n défilement
n="li",//La balise HTML à faire défiler
contenue dans l'objet de défilement par défaut
o="ul",//En cas de défilement, la balise HTML
qui enveloppe l'élément de défilement est activée
e,//Appeler l'objet
fr,//Appelle la collection de tous les objets à faire défiler dans l'objet
h;//Hauteur de la ligne de défilement
var vLimit=80;//Légèrement plus petit que la limite visuelle de 0,1 s
var maxRnum=Math.ceil(rt/vLimit);//Nombre maximum de parchemins
var maxRh=0; // Chaque hauteur de défilement
var fnRollFirst=function(arg){//Enroulez arg de 1 n, et une fois terminé, déplacez le premier n vers la dernière position
var rCount=0 //Enregistrement du nombre de défilements
var rVal=setInterval(function(){//Boucle chaque vLimit, pour un total de maxRnum-1 fois
rCompte ;
arg.scrollTop(arg.scrollTop() maxRh);
If(rCount>=(maxRnum-1)){//1 volume de moins
;
arg.scrollTop(arg.sc rollTop() h-maxRh*(maxRnum-1));//La dernière valeur de défilement modifiée
//Déplacer le premier élément à la fin
var nowN=arg.children(n);
maintenantN.eq(maintenantN.length-1).after(maintenantN.eq(0));
//La première position doit être corrigée en rembobinant une fois libérée
} ;
},vLimit);
};
var fnRollArr=function(arg){//Commencez à faire défiler un par un les objets du tableau
var out=setInterval(function(){
fnRollFirst(arg.shift());
Si(!arg.length){
;
};
},rt);
};
var fnRoll=function(){//Obtenir la collection d'objets qui doivent défiler un par un
var arr=new Array();
e.children(o).each(function(){
var rn=$(this).children(n);
Si(rn.length>1){
arr.push($(this));
};
});
setInterval(function(){
fnRollArr(arr.slice(0));
},t);
};
var fnLay=function(){//Mise en page
h=en.height();
var nu=Math.ceil(en.length/l);
var u=$("<" o ">" o ">");
u.css({"overflow":"hidden","height":h "px","margin-bottom":"15px"});
pour(var i=0;i
en.slice(nu*i,nu*(i 1)).wrapAll(u);
};
var fnMain=function(){//Méthode principale de défilement
Si(maxRnum>1){
fnLay();
maxRh=Math.ceil(h/maxRnum);
fnRoll();
};
};
var fnStart= function(arg){//Initialiser le mode d'affichage
e=arg;
fr = e.children(n);
fr.show();
Si(en.length>l){
fnMain();
}autre{
return false ;
};
};
revenir {
setLine : function(num){//Définir le nombre de lignes à diviser pour le défilement
(!isNaN(num) && num>0)?l=num:"";
renvoyez ceci ;
},
setTime : function(num){//Intervalle de défilement : millisecondes
(!isNaN(num) && num>0)?t=num:"";
renvoyez ceci ;
},
startRoll : function(){//Démarrer le défilement
fnStart(this);
}
};
>
)(jQuery));
2. La page peut ressembler à ceci
J'espère que cet article sera utile à la programmation jQuery de chacun.
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