DHTML + Javascript

DHTML + Javascript - Programmation

Marsh Posté le 16-12-2001 à 00:12:28    

bon, je me suis fais un pitit javascript qui scroll du text...
ca marche bien sous ie, mais le truc c qu'il faudrait que ca marche aussi sous NN6...
 
d'ou ma question:
ca sous IE ca donne quoi avec NN6 ??

Code :
  1. document.all.text.style.pixelTop

ou text est un calque <DIV>
..
 
parce que j'ai essayé ca:

Code :
  1. document.getElementById("text" ).style.top


mais ca marche pas :(

Reply

Marsh Posté le 16-12-2001 à 00:12:28   

Reply

Marsh Posté le 16-12-2001 à 01:24:44    

ça marche chez moi :D
 
<div id='myDiv' style='position: absolute; left=-400;'>hello !</div>
 
<script>
  document.getElementById('myDiv';).style.top = 100;
</script>
 
testé sous netscape 6 + une build récente de mozilla ... tu obtiens quoi avec un alert(document.getElementById('text';)) ? undefined ?

Reply

Marsh Posté le 16-12-2001 à 01:31:42    

alert(document.getElementById('text';))  
 
j'obtient objet HtmlDivElement
et meme un alert (document.getElementById("text" ).style.top);
me donne la bonne valeur, le pb c que je vois pas pkoi ca marche pas... :(
 
je balance la page...

Reply

Marsh Posté le 16-12-2001 à 01:38:11    

ca fait trop longtps que ca m'enerve ce truc!
j'ai juste remplacé le document.all de ie par le document.geteelementbyid de nn6 ... je vois pas pkoi ca marche po :-(
 

Code :
  1. <HTML>
  2. <HEAD>
  3. <SCRIPT language="javascript">
  4. // verification du navigateur:
  5. function navig()
  6. {
  7. if (document.getElementById && !document.all )
  8. return ('netscape5+');
  9. else if (document.layers)
  10. return ('netscape4');
  11. else if (document.all)
  12. return ('ie');
  13. }
  14. //SCROLLING:
  15. var timedesc;
  16. // aller en haut:
  17. function move_up()
  18. {
  19. timedesc = setInterval("scroll_layer(0)", 100);
  20. }   
  21. // aller en bas:
  22. function move_down()
  23. {
  24. timedesc = setInterval("scroll_layer(1)", 100);
  25. // arret scrolling
  26. function scroll_stop()
  27. {
  28. clearInterval(timedesc);
  29. }
  30. function scroll_layer(flag, savetop, savebottom)
  31. {
  32. if (navig() == 'ie')
  33.  var tab = document.all.text.style.clip.split("rect(" )[1].split(" )" )[0].split("px" );
  34. else if (navig() == 'netscape5+')
  35.  var tab = document.getElementById("text" ).style.clip.split("rect(" )[1].split(" )" )[0].split("px" );
  36. var ct = tab[0];
  37. var cr = tab[1];
  38. var cb = tab[2];
  39. var cl = tab[3];
  40. var count;
  41. if (flag == 1) //descendre
  42. {
  43.    if (cb < 340)
  44.  {
  45.   if (navig() == 'ie')
  46.    document.all.text.style.pixelTop-=10;
  47.   else if (navig() == 'netscape5+')
  48.    document.getElementById("text" ).style.top-=10;
  49.   for (count=0; count<10; count++)
  50.   {
  51.    ct++;
  52.    cb++;
  53.   }
  54.  }
  55. }
  56. else // monter
  57.  if (navig() == 'ie')
  58.  {
  59.   if (document.all.text.style.pixelTop < ct+50)
  60.   {
  61.    document.all.text.style.pixelTop+=10;
  62.    for (count=0; count<10; count++)
  63.    {
  64.     ct--;
  65.     cb--;
  66.    }
  67.   }
  68.  }
  69.  else if (navig() == 'netscape5+')
  70.  {
  71.   if (document.getElementById("text" ).style.top < ct+50)
  72.   {
  73.    document.getElementById("text" ).style.top+=10;
  74.    for (count=0; count<10; count++)
  75.    {
  76.     ct--;
  77.     cb--;
  78.    }
  79.   }
  80.  }
  81. }
  82. eval("document.all.text.style.clip = 'rect(' + ct + ' ' +  cr + ' ' + cb + ' ' + cl +')'" );
  83. }
  84. </SCRIPT>
  85. </HEAD>
  86. <BODY bgcolor="#00ff00" leftmargin="5" topmargin="5" marginwidth="5" marginheight="5">
  87. <a class="noir" onmouseover="move_down()" onmouseout="scroll_stop()">down</A><BR>  
  88. <a class="noir" onmouseover="move_up()" onmouseout="scroll_stop()">up</A>
  89. <BR>
  90. <DIV id="text" style="BACKGROUND-COLOR: #FFFFFF; POSITION: absolute; TOP: 50; LEFT: 132; WIDTH:600; HEIGHT:70; Z-INDEX:0; VISIBILITY:visible; clip: rect(0px 600px 100px 0px)">
  91. <FONT class="noir_normal">1 depart<BR>2zobi c l'arrivée ici<BR>3 dqsdqsdsqdqsdqsdqsd ds qdsdqsd<br>4 fdfsdfdsfdsfdsfdsf
  92.  fdsfdsf<BR>5 fsdfsdf sdf ds fdsfdsfsgfjdsgf jhgdfj dgs jgdsjhgdsj hdsjfg jdsfgjds hgfjdshgf jhsgdfj h<BR><BR><p>gsfgfgdf
  93.  gdfgdfgdfgdfg<BR>6 fin<BR>
  94.  7 dfgdfg<BR>
  95.  8 fdgd<BR>
  96.  9 fgd<BR>
  97.  10fgfdgfgdfgdfgd<BR>
  98.  7 dfgdfg<BR>
  99.  8 fdgd<BR>
  100.  9 fgd<BR>
  101.     10fgfdgfgdfgdfgd<BR>
  102.  42!!!!end<BR> </P>
  103. </DIV>
  104. </BODY>
  105. </HTML>


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Marsh Posté le 16-12-2001 à 02:00:34    

document.getElementById("text" ).style.top-=10;  
 
ouep, c'est un des trucs que je ne pige pas des masses ... ce genre de variables CSS est stockée non pas sous forme d'entiers, mais sous forme de strings, ceci afin de permettre les '10px', '10pt', '10em', etc.
 
document.getElementById("text" ).style.top = parseInt(document.getElementById("text" ).style.top) - 10;  
 
résoud le problème. j'ai testé ça rapidement, ça marche bien avec netscape 6.

Reply

Marsh Posté le 16-12-2001 à 02:10:00    

merciiii! je vais essayer ca tout de suite...
enfin si tu dis que ca marche c cool! il me restera plus qeu NN4 !! :D
 
 :bounce:


---------------
Suri.morkitu.org : Balades au coeur de la ville...
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed