Page 1 sur 1
texte defilant verticalement compatible mozilla
Posté : 21 juin 2006, 10:38
par tom_
Bonjour
Je recherche un code qui permet le defilement d'un texte avec pause compatible avec mozilla
exemple :
http://www.editeurjavascript.com/script ... _1_110.php
Ce script est bien mais ne marche pas chez moi
Posté : 21 juin 2006, 11:21
par Ryle
Posté : 21 juin 2006, 11:30
par tom_
Merci mais j'ai deja cherché sur google...
j'ai trouvé un bon script :
http://www.editeurjavascript.com/script ... _1_110.php
mais je n'arrive pas à l'intégrer dans ma page

Posté : 21 juin 2006, 12:05
par Ryle
Ah bah déjà ça change tout, le problème n'est donc pas de trouver un script compatible avec mozilla ou avec ton environnement, mais de réaliser l'intégration de celui ci
Quels problèmes rencontres-tu ? As-tu des erreurs javascript ?
As tu utilisé le formulaire présent sur le site pour générer ton code ou juste récupéré le squelette et complété ?
Posté : 21 juin 2006, 12:17
par tom_
je me suis servi du formulaire présent sur le site. j'ai enregistré 2 lignes
quand je lance ma page les 2 lignes se superposent ensuite lorsque le texte défile il y a un retour à la ligne après chaque mot et pour finir on peut voir la ligne qui est passé en attente en dehors de mon <div> c'est super beau ! lol
voici mon code
Code : Tout sélectionner
.ejs_scroll {
font-size:11px;
font-family:Verdana;
color:#000000;
text-decoration:none
}
.zone2
{
border: 1px dotted #C0C0C0;
width: 290px;
height: 180px;
margin-left: 120px;
margin-top: 45px;
float: right;
}
Code : Tout sélectionner
<div class="zone2">
<script language="JavaScript1.2">
/*
SCRIPT EDITE SUR L'EDITEUR JAVASCRIPT
http://www.editeurjavascript.com
*/
ejs_scroll_largeur = 200;
ejs_scroll_hauteur = 180;
ejs_scroll_bgcolor = '#FFFFFF';
/* Mettre ici le chemin de l'image de fond */
ejs_scroll_background = "";
/* Mettre ici le temps en secondes */
ejs_scroll_pause_seconde = 5;
ejs_scroll_message = new Array;
ejs_scroll_message[0]='<p>ligne 1, blabla blabla</p>';
ejs_scroll_message[1]='<p>ligne 2, blabla blabla</p>';
function d(texte)
{
document.write(texte);
}
d('<DIV ID=ejs_scroll_relativ STYLE="position:relative;width:'+ejs_scroll_largeur+';height:'+ejs_scroll_hauteur+';background-color:'+ejs_scroll_bgcolor+';background-image:url('+ejs_scroll_background+')">');
d('<DIV ID=ejs_scroll_cadre STYLE="position:absolute;width:'+(ejs_scroll_largeur-8)+';height:'+(ejs_scroll_hauteur-8)+';top:4;left:4;clip:rect(0 '+(ejs_scroll_largeur-8)+' '+(ejs_scroll_hauteur-8)+' 0)">');
d('<div id=ejs_scroller_1 style="position:absolute;width:'+(ejs_scroll_largeur-8)+';left:0;top:0;" CLASS=ejs_scroll>'+ejs_scroll_message[0]+'</DIV>');
d('<div id=ejs_scroller_2 style="position:absolute;width:'+(ejs_scroll_largeur-8)+';left:0;top:'+ejs_scroll_hauteur+';" CLASS=ejs_scroll>'+ejs_scroll_message[1]+'</DIV>');
d('</DIV></DIV>');
ejs_scroll_mode =1;
ejs_scroll_actuel = 0;
function ejs_scroll_start()
{
if(ejs_scroll_mode == 1)
{
ejs_scroller_haut = "ejs_scroller_1";
ejs_scroller_bas = "ejs_scroller_2";
ejs_scroll_mode = 0;
}
else
{
ejs_scroller_bas = "ejs_scroller_1";
ejs_scroller_haut = "ejs_scroller_2";
ejs_scroll_mode = 1;
}
ejs_scroll_nb_message = ejs_scroll_message.length-1;
if(ejs_scroll_actuel == ejs_scroll_nb_message)
ejs_scroll_suivant = 0;
else
ejs_scroll_suivant = ejs_scroll_actuel+1;
if(document.getElementById)
document.getElementById(ejs_scroller_bas).innerHTML = ejs_scroll_message[ejs_scroll_suivant];
ejs_scroll_top = 0;
if(document.getElementById)
setTimeout("ejs_scroll_action()",ejs_scroll_pause_seconde*1000)
}
function ejs_scroll_action()
{
ejs_scroll_top -= 1;
document.getElementById(ejs_scroller_haut).style.top = ejs_scroll_top;
document.getElementById(ejs_scroller_bas).style.top = ejs_scroll_top+ejs_scroll_hauteur;
if((ejs_scroll_top+ejs_scroll_hauteur) > 0)
setTimeout("ejs_scroll_action()",10)
else
ejs_scroll_stop()
}
function ejs_scroll_stop()
{
ejs_scroll_actuel = ejs_scroll_suivant;
ejs_scroll_start()
}
window.onload = ejs_scroll_start;
</SCRIPT>
</div>
Posté : 21 juin 2006, 12:37
par Ryle
J'opterais pour un problème de taille... tu as un div (zone2) de 290px de large, avec une marge à gauche de 120px, dans lequel tu inclus le script en définissant une largeur de 200px... ça fait un peu plus que 290
A tester..
Posté : 21 juin 2006, 12:47
par tom_
dsl mais j'ai pas saisi..
en quoi la marge de gauche poserait un problème ?
CSS:
largeur : 290 px;
hauteur: 180px;
javascript:
largeur : 200 px;
hauteur: 180px;
Posté : 21 juin 2006, 12:57
par tom_
j'ai ajouté au css :
.ejs_scroll {
width: 200px;
font-size:11px;
font-family:Verdana;
color:#000000;
text-decoration:none;
margin-left: 30px;
border: 0px solid #000;
}
avec ça je n'ai plus de retour à la ligne
mais il y a toujours la superposition et ensuite la ligne en attente qui est visible
Posté : 21 juin 2006, 13:23
par Ryle
Je ne sais plus exactement comment cela fonctionne, mais on m'avait expliqué qu'il y avait une différence entre le width dans certaines versions de mozilla et d'IE, l'un prenait en compte la marge dans le width, l'autre pas...
Enfin dès le moment où ton texte est écrasé ou subit des retours à la ligne, c'est souvent un problème de largeur définie trop petite
Pour le reste, essaye éventuellement de virer les balises <p></p> dans tes textes...

Posté : 21 juin 2006, 16:47
par Shrell
en effet, il y a une
différence d'interprétation du modèle des boites entre IE et le reste du monde (sur un air connu...)

Posté : 22 juin 2006, 10:00
par tom_
merci pour ces commentaires mais je ne trouve pas l'astuce pour stopper ce bug !
j'ai modifier le retour à la ligne
mais pas le chargement de la phrase suivante toujours (visible)
Posté : 22 juin 2006, 10:02
par Invité
merci pour ces commentaires mais je ne trouve pas l'astuce pour stopper ce bug !
j'ai modifier le retour à la ligne
mais pas le chargement de la phrase suivante toujours (visible)
et surtout aucun movement dans mozilla
