Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Pb avec Firefox et DOCTYPE strict [ JavaScript et le navigateur / Problème de compatibilité ] (nico03)

dimanche 5 octobre 2008 à 23:00:45 | Pb avec Firefox et DOCTYPE strict

nico03

Bonjour,

J'ai créé une page web sous DOCTYPE strict XHTML 1.0 permettant d'afficher un texte défilant. Ce texte reprend les titres des news de la partie News.
Le texte s'affiche bien avec IE, mais pas avec Firefox.
Lorsque je supprime le DOCTYPE ou que j'insère un DOCTYPE Transitional, celà fonctionne sur les deux.
Je pense qu'il y a une erreur dans le code mais je ne vois pas.

Voici le code de la page d'accueil :


<script type="text/javascript">
      var singletext=new Array();

   <?php
   for($i=0;$i<count($news);$i++)
   {
   ?>
singletext[<?php echo $i?>]="<nobr align=\"center\" class=tan><a href=\"index.php?section=news\"><span class=\"defilnews\"><?php echo $news[($i+1)]?>&nbsp;:</span></a> <span class=\"newsAcc\" Onclick=\"javascript:document.location.href=\'index.php?section=news\'\"><?php echo $corps[($i+1)]?>...</span></a></nobr>";

<?php
}
?>

</script>

<script type="text/javascript">
   document.write('<td width='+swidth+'>');
   if(document.layers)
      {document.write('<ilayer id="ns4div" width='+swidth+' height='+sheight+' bgcolor='+sbcolor+'><layer id="ns4div1" width='+swidth+' height='+sheight+' onmouseover="sspeed=0;" onmouseout="sspeed=restart"></layer></ilayer>')}

if(document.getElementById||document.all)
      {document.write('<div style="position:relative;overflow:hidden;width:'+swidth+';height:'+sheight+';clip:rect(0 '+swidth+' '+sheight+' 0);background-color:'+sbcolor+';" onmouseover="sspeed=0;" onmouseout="sspeed=restart"><div id="iens6div" style="position:absolute;height:'+sheight+';"></div></div>');}
</script>

Et le code de la page news.js :
//-- Begin Scroller's Parameters and messages -->

//scroller's width
var swidth="650px";

//scroller's height
var sheight="25px";

//scroller's speed
var sspeed=4;
var restart=sspeed;
var rspeed=sspeed;

//scroller's pause
var spause=2000;

//scroller's background
var sbcolor="none";


//-- end Parameters and message -->


//-- begin: Scroller's Algorithm -->

var ii="0";

function goup()
{
if(sspeed!=rspeed*8)
          {sspeed=sspeed*2;
          restart=sspeed;}
 }

function godown()
{
 if(sspeed>rspeed)
          {sspeed=sspeed/2;
          restart=sspeed;}
}

function start()
{
 if(document.getElementById)
          {ns6div=document.getElementById('iens6div');
          ns6div.style.left=swidth;
          ns6div.innerHTML=singletext[0];
          sizeup=ns6div.offsetWidth;
          ns6scroll();}

 else if(document.layers)
          {ns4layer=document.ns4div.document.ns4div1;
          ns4layer.left=swidth;
          ns4layer.document.write(singletext[0]);
          ns4layer.document.close();
          sizeup=ns4layer.document.width;
          ns4scroll();}

 else if(document.all)
          {iediv=iens6div;
          iediv.style.pixelLeft=swidth;
          iediv.innerHTML=singletext[0];
          sizeup=iediv.offsetWidth;
          iescroll();}
}

function iescroll()
{
 if(iediv.style.pixelLeft>0&&iediv.style.pixelLeft<=sspeed)
          {iediv.style.pixelLeft=0;
          setTimeout("iescroll()",spause);}
 
 else if(iediv.style.pixelLeft>=sizeup*-1)
          {iediv.style.pixelLeft-=sspeed;
          setTimeout("iescroll()",100);}
 
 else
          {if(ii==singletext.length-1)ii=0;
          else ii++;
          iediv.style.pixelLeft=swidth;
          iediv.innerHTML=singletext[ii];
          sizeup=iediv.offsetWidth;
          iescroll();}
}

function ns4scroll()
{
 if(ns4layer.left>0&&ns4layer.left<=sspeed)
          {ns4layer.left=0;
          setTimeout("ns4scroll()",spause);}
 
 else if(ns4layer.left>=sizeup*-1)
          {ns4layer.left-=sspeed;
          setTimeout("ns4scroll()",100);}
 
 else
    {if(ii==singletext.length-1)ii=0;
    else ii++;
          ns4layer.left=swidth;
          ns4layer.document.write(singletext[ii]);
          ns4layer.document.close();
          sizeup=ns4layer.document.width;
          ns4scroll();}
}

function ns6scroll()
{
 if(parseInt(ns6div.style.left)>0&&parseInt(ns6div.style.left)<=sspeed)
          {ns6div.style.left=0;
          setTimeout("ns6scroll()",spause);}
 
 else if(parseInt(ns6div.style.left)>=sizeup*-1)
          {ns6div.style.left=parseInt(ns6div.style.left)-sspeed;
          setTimeout("ns6scroll()",100);}

 else
    {if(ii==singletext.length-1)ii=0;
    else ii++;
          ns6div.style.left=swidth;
          ns6div.innerHTML=singletext[ii];
          sizeup=ns6div.offsetWidth;
          ns6scroll();}
}

//-- end Algorithm -->

Quelqu'un saurait-il me dire ce qui cloche ?
Merci d'avance !

Nico




Cette discussion est classé dans : style, document, left, if, sspeed


Répondre à ce message

Sujets en rapport avec ce message

centrer un menu en layer dans la page [ par jibchamonix ] Bonjour,Je dois centrer toutes les pages d'un site que je suis en train de développer. Le menu et les sous-menu développer sous forme de layer (calque Pb avec un javascript de scroll qui tourne sous IE mais pas sous Firefox [ par thonyboy ] Bonjour, Aprés de longues recherches, je tente ma chance auprés de vous... avec peut etre au final un Miracle Voila j'ai récupéré un petit script de 2 menuS deroulants java dans une page [ par DEVLYNE ] Bonjour!Sachez que je suis uns très grande débutante mais j'ai un petit souci.J'utilise un logiciel gratuit: Coffee Cup DHTML menu pour faire mes menu script que j'aimerai modifier [ par betsie ] Bonjour Voilà, j'ai ce script pour une horloge analogique, mais j'aimerai pourvoir le modifier pour qu'elle soit légèrement plus à gauche et légèremen Info-bulle avec usermap [ par f1hgu ] Bonjour,Dans le but de développer mon site, j'étais à la recherche d'un script faisant une info bulle avec un usermap et des areas shape. Ne trouvant, Une boite flotante capricieuse [ par Nathbest ] Bonjour à tous, alors voici mon problème:J'ai un système de boite flotante qui s'affiche à moitié caché sur la gauche, puis losque l'on passe la souri Problème avec FF / DOCTYPE [ par nico03 ] Bonjour, J'ai créé une page web (DOCTYPE XHTML 1.0 strict) avec un bloc qui afficher un texte défilant. Ce texte reprend les titres des news de la pa Problème menu déroulant avec Firefox [ par franckdu34 ] Bonjour,J'ai mis un menu déroulant sur mon site qui fonctionne parfaitement sous Internet Explorer mais pas sous Firefox.Quelqu'un aurait-il la soluti probleme de compatibilité de fonction javascript avec la balise <table> [ par misshasnae ] slt ts le mondej'ai un petit problème dans le code html de ma page de réservation, svp si quelq'un a une idée repond moi c urgent é merci d'avance. Script Automne [ par potaba ] Bonjour !!!!      J'ai trouvé une superbe script en rapport avec l'automne pour mon forum mais il n'est que compatible avec Internet explorer Est-ce q


Nos sponsors

Sondage...

CalendriCode

Novembre 2008
LMMJVSD
     12
3456789
10111213141516
17181920212223
24252627282930

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,296 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.