anthony428
Messages postés102Date d'inscriptionvendredi 18 août 2006StatutMembreDernière intervention29 mai 2012
-
9 oct. 2010 à 11:27
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 2011
-
13 oct. 2010 à 18:59
Bonjour à tous,
je viens de plonger les mains dans un site dont je suis chargé de faire la refonte et je souhaiterais changer le sens du texte qui défile actuellement du bas vers le haut, je voudrais qu'il parte de la droite vers la gauche, l'ennui c'est qu'il m'est difficile d'interpréter ce code dont je ne suis pas l'auteur...
Pourriez vous m'aider à le comprendre afin que je sois capable de le modifier.
voici le code qui me pose problème :
function addScrollers() {
startScroll('myscroller',contenu);
}
var speed=4;
var dR=false;
var step = 2;
function objWidth(obj) {if(obj.offsetWidth) return obj.offsetWidth; if (obj.clip) return obj.clip.width; return 0;} function objHeight(obj) {if(obj.offsetHeight) return obj.offsetHeight; if (obj.clip) return obj.clip.height; return 0;} function scrF(i,sH,eH){var x=parseInt(i.top)+(dR? step: -step); if(dR && x>sH)x=-eH;else if(x<2-eH)x=sH;i.top = x+'px';} function startScroll(sN,txt){var scr=document.getElementById(sN); var sW = objWidth(scr)-6; var sH = objHeight(scr); scr.innerHTML = '
'+txt+'<\/div>'; var sTxt=document.getElementById(sN+'in'); var eH=objHeight(sTxt); sTxt.style.top=(dR? -eH : sH)+'px'; sTxt.style.clip='rect(0,'+sW+'px,'+eH+'px,0)'; setInterval(function() {scrF(sTxt.style,sH,eH);},1000/speed);}
window.onload = addScrollers;
Merci d'avance pour toutes les informations que vous pourrez m'apporter.
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 12 oct. 2010 à 18:39
Bonjour,
je viens de tester le code en l'état et....
pourquoi ne pas utiliser le balise MARQUEE, elle fait la même chose, exemple tiré du sac...
<html>
<head>
<title>Balise MARQUEE</title>
<style type="text/css">
.message {
width : 350px;
border :1px solid #c0c0c0;
font-family : Verdana;
font-size : 13px;
}
</style>
</head>
<marquee class="message">
Harum trium sententiarum nulli prorsus assentior. Nec enim illa prima vera est, ut, quem ad modum in se quisque sit, sic in amicum sit animatus.
</marquee>
</html>
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 9 oct. 2010 à 18:51
Bonjour,
il aurait été sympa de formater la sortie du code pour pas tout avoir sur une même ligne, mais bon...
...donc dans ta fonction scrF il faut faire varier le left et non le top
;O)
anthony428
Messages postés102Date d'inscriptionvendredi 18 août 2006StatutMembreDernière intervention29 mai 2012 10 oct. 2010 à 12:11
Merci pour ta réponse mais je ne suis pas sur de comprendre, il faut que je remplace les top par des left ?
Je viens de tester, j'ai un bloc d'infos qui est sur plusieurs lignes et ce bloc se déplace de droite à gauche, je voudrais que ce bloc entier s'affiche en une seule ligne...je dois encore chercher mais je te remercie pour l'info, je pense que ça va me permettre de débloquer la situation et désolé pour l'affichage en ligne mais lorsque je l'ai formaté un peu, la fonction ne fonctionnait plus alors j'ai préféré la laisser comme ça.
anthony428
Messages postés102Date d'inscriptionvendredi 18 août 2006StatutMembreDernière intervention29 mai 2012 12 oct. 2010 à 15:11
Je te remercie de ton aide mais j'ai beau parcourir mon css ou mon code html, je n'arrive pas à isoler les propriétés qui définissent la taille de mon objet.
Dans ma fonction, j'ai pourtant les propriétés width qui sont utilisées, es tu sur que cela n'est pas à prendre en compte ?
anthony428
Messages postés102Date d'inscriptionvendredi 18 août 2006StatutMembreDernière intervention29 mai 2012 12 oct. 2010 à 15:20
Je vais répondre à ma question moi même, la propriété width joue un bien rôle sur la largeur de mon objet mais mon problème n'est pas de définir la taille de mon objet mais de le faire défiler jusqu'à ce qu'il ait atteint la fin du message...
anthony428
Messages postés102Date d'inscriptionvendredi 18 août 2006StatutMembreDernière intervention29 mai 2012 12 oct. 2010 à 20:55
super, je ne connaissais pas du tout cette balise, c'est vrai que c'est exactement ce que je veux. Je n'ai plus qu'à récupérer les infos de ma BDD pour les afficher dedans mais est il possible de contrôler la vitesse de défilement ?
anthony428
Messages postés102Date d'inscriptionvendredi 18 août 2006StatutMembreDernière intervention29 mai 2012 13 oct. 2010 à 10:37
Je te remercie, toutes tes informations m'ont été précieuse pour résoudre ce problème. Je n'ai pas encore eu le temps de regarder pour la vitesse de défilement du texte mais la solution proposées répond assez bien à ce que je voulais faire mis à part le fait que je ne peux pas afficher plusieurs infos différentes les unes à la suite des autres... mais une info c'est déjà pas mal. Merci beaucoup, c'est toujours aussi plaisant de voir que des personnes prennent le temps de répondre aux problématiques des autres...vive la communauté code source
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 13 oct. 2010 à 18:59
Bonjour,
SCROLLAMOUNT pour jouer sur le pas d'avance, la distance en pixel entre 2 affichages.
SCROLLDELAY pour jouer sur la vitesse de déplacement, la vitesse à laquelle on fait les déplacement.
la nuance existe!
je ne peux pas afficher plusieurs infos différentes les unes à la suite des autres. il doit y avoir moyen en les mettant bout à bout..