Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1899 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Question pour Scipt

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Question pour Scipt

n°1873484
scorpio630​00
Posté le 15-04-2009 à 18:25:28  profilanswer
 

bonjour à tous  
 
j'aurais une question à vous poser  
 
j'ai un script qui marche sur IE 6,7 et 8 et non sur firefox  
 
j'aimerais savoir s'il est possible de le rendre compatible avec firefox
 
merci d'avance
 
voici le script

Code :
  1. <SCRIPT language="Javascript">
  2. dCol='#FFFFF'; // COULEUR DE LA DATE
  3. fCol='#FFFFF'; // COULEUR DU TEXTE
  4. sCol='#FFFFF'; // COULEUR DES SECONDES
  5. mCol='#FFFFF'; // COULEUR DES MINUTES
  6. hCol='#FFFFF'; // COULEUR DES HEURES
  7. ClockHeight=40; // LARGEUR DE L'HORLOGE
  8. ClockWidth=40; // HAUTEUR DE L'HORLOGE
  9. ClockFromMouseY=60; // DISTANCE VERTICALE DU CURSEUR
  10. ClockFromMouseX=60; // DISTANCE HORIZONTALE DU CURSEUR
  11. d=new Array("DIMANCHE","LUNDI","MARDI","MERCREDI","JEUDI","VENDREDI","SAMEDI" );
  12. m=new Array("JANVIER","FEVRIER","MARS","AVRIL","MAI","JUIN","JUILLET","AOUT","SEPTEMBRE","OCTOBRE","NOVEMBRE","DECEMBRE" );
  13. date=new Date();
  14. day=date.getDate();
  15. year=date.getYear();
  16. if (year < 2000) year=year+1900;
  17. TodaysDate=" "+d[date.getDay()]+" "+day+" "+m[date.getMonth()]+" "+year;
  18. D=TodaysDate.split('');
  19. H='....';
  20. H=H.split('');
  21. M='.....';
  22. M=M.split('');
  23. S='......';
  24. S=S.split('');
  25. Face='1 2 3 4 5 6 7 8 9 10 11 12';
  26. font='Verdana';
  27. size=1;
  28. speed=.6;
  29. ns=(document.layers);
  30. ie=(document.all);
  31. Face=Face.split(' ');
  32. n=Face.length;
  33. a=size*1;
  34. ymouse=12;
  35. xmouse=0;
  36. scrll=0;
  37. props="<font face="+font+" size="+size+" color="+fCol+">";
  38. props2="<font face="+font+" size="+size+" color="+dCol+"><B>";
  39. Split=360/n;
  40. Dsplit=360/D.length;
  41. HandHeight=ClockHeight/4.5
  42. HandWidth=ClockWidth/4.5
  43. HandY=-7;
  44. HandX=-2.5;
  45. scrll=0;
  46. step=0.04;
  47. currStep=0;
  48. y=new Array();x=new Array();Y=new Array();X=new Array();
  49. for (i=0; i < n; i++){y[i]=0;x[i]=0;Y[i]=0;X[i]=0}
  50. Dy=new Array();Dx=new Array();DY=new Array();DX=new Array();
  51. for (i=0; i < D.length; i++){Dy[i]=0;Dx[i]=0;DY[i]=0;DX[i]=0}
  52. if (ns){
  53. for (i=0; i < D.length; i++)
  54. document.write('<layer name="nsDate'+i+'" top=0 left=0 height='+a+' width='+a+'><center>'+props2+D[i]+'</font></center></layer>');
  55. for (i=0; i < n; i++)
  56. document.write('<layer name="nsFace'+i+'" top=0 left=0 height='+a+' width='+a+'><center>'+props+Face[i]+'</font></center></layer>');
  57. for (i=0; i < S.length; i++)
  58. document.write('<layer name=nsSeconds'+i+' top=0 left=0 width=15 height=15><font face=Arial size=3 color='+sCol+'><center><b>'+S[i]+'</b></center></font></layer>');
  59. for (i=0; i < M.length; i++)
  60. document.write('<layer name=nsMinutes'+i+' top=0 left=0 width=15 height=15><font face=Arial size=3 color='+mCol+'><center><b>'+M[i]+'</b></center></font></layer>');
  61. for (i=0; i < H.length; i++)
  62. document.write('<layer name=nsHours'+i+' top=0 left=0 width=15 height=15><font face=Arial size=3 color='+hCol+'><center><b>'+H[i]+'</b></center></font></layer>');
  63. }
  64. if (ie){
  65. document.write('<div id="Od" style="position:absolute;top:0px;left:0px"><div style="position:relative">');
  66. for (i=0; i < D.length; i++)
  67. document.write('<div id="ieDate" style="position:absolute;top:0px;left:0;height:'+a+';width:'+a+';text-align:center">'+props2+D[i]+'</B></font></div>');
  68. document.write('</div></div>');
  69. document.write('<div id="Of" style="position:absolute;top:0px;left:0px"><div style="position:relative">');
  70. for (i=0; i < n; i++)
  71. document.write('<div id="ieFace" style="position:absolute;top:0px;left:0;height:'+a+';width:'+a+';text-align:center">'+props+Face[i]+'</B></font></div>');
  72. document.write('</div></div>');
  73. document.write('<div id="Oh" style="position:absolute;top:0px;left:0px"><div style="position:relative">');
  74. for (i=0; i < H.length; i++)
  75. document.write('<div id="ieHours" style="position:absolute;width:16px;height:16px;font-family:Arial;font-size:16px;color:'+hCol+';text-align:center;font-weight:bold">'+H[i]+'</div>');
  76. document.write('</div></div>');
  77. document.write('<div id="Om" style="position:absolute;top:0px;left:0px"><div style="position:relative">');
  78. for (i=0; i < M.length; i++)
  79. document.write('<div id="ieMinutes" style="position:absolute;width:16px;height:16px;font-family:Arial;font-size:16px;color:'+mCol+';text-align:center;font-weight:bold">'+M[i]+'</div>');
  80. document.write('</div></div>')
  81. document.write('<div id="Os" style="position:absolute;top:0px;left:0px"><div style="position:relative">');
  82. for (i=0; i < S.length; i++)
  83. document.write('<div id="ieSeconds" style="position:absolute;width:16px;height:16px;font-family:Arial;font-size:16px;color:'+sCol+';text-align:center;font-weight:bold">'+S[i]+'</div>');
  84. document.write('</div></div>')
  85. }
  86. (ns)?window.captureEvents(Event.MOUSEMOVE):0;
  87. function Mouse(evnt){
  88. ymouse = (ns)?evnt.pageY+ClockFromMouseY-(window.pageYOffset):event.y+ClockFromMouseY;
  89. xmouse = (ns)?evnt.pageX+ClockFromMouseX:event.x+ClockFromMouseX;
  90. }
  91. (ns)?window.onMouseMove=Mouse:document.onmousemove=Mouse;
  92. function ClockAndAssign(){
  93. time = new Date ();
  94. secs = time.getSeconds();
  95. sec = -1.57 + Math.PI * secs/30;
  96. mins = time.getMinutes();
  97. min = -1.57 + Math.PI * mins/30;
  98. hr = time.getHours();
  99. hrs = -1.575 + Math.PI * hr/6+Math.PI*parseInt(time.getMinutes())/360;
  100. if (ie){
  101. Od.style.top=window.document.body.scrollTop;
  102. Of.style.top=window.document.body.scrollTop;
  103. Oh.style.top=window.document.body.scrollTop;
  104. Om.style.top=window.document.body.scrollTop;
  105. Os.style.top=window.document.body.scrollTop;
  106. }
  107. for (i=0; i < n; i++){
  108. var F=(ns)?document.layers['nsFace'+i]:ieFace[i].style;
  109. F.top=y[i] + ClockHeight*Math.sin(-1.0471 + i*Split*Math.PI/180)+scrll;
  110. F.left=x[i] + ClockWidth*Math.cos(-1.0471 + i*Split*Math.PI/180);
  111. }
  112. for (i=0; i < H.length; i++){
  113. var HL=(ns)?document.layers['nsHours'+i]:ieHours[i].style;
  114. HL.top=y[i]+HandY+(i*HandHeight)*Math.sin(hrs)+scrll;
  115. HL.left=x[i]+HandX+(i*HandWidth)*Math.cos(hrs);
  116. }
  117. for (i=0; i < M.length; i++){
  118. var ML=(ns)?document.layers['nsMinutes'+i]:ieMinutes[i].style;
  119. ML.top=y[i]+HandY+(i*HandHeight)*Math.sin(min)+scrll;
  120. ML.left=x[i]+HandX+(i*HandWidth)*Math.cos(min);
  121. }
  122. for (i=0; i < S.length; i++){
  123. var SL=(ns)?document.layers['nsSeconds'+i]:ieSeconds[i].style;
  124. SL.top=y[i]+HandY+(i*HandHeight)*Math.sin(sec)+scrll;
  125. SL.left=x[i]+HandX+(i*HandWidth)*Math.cos(sec);
  126. }
  127. for (i=0; i < D.length; i++){
  128. var DL=(ns)?document.layers['nsDate'+i]:ieDate[i].style;
  129. DL.top=Dy[i] + ClockHeight*1.5*Math.sin(currStep+i*Dsplit*Math.PI/180)+scrll;
  130. DL.left=Dx[i] + ClockWidth*1.5*Math.cos(currStep+i*Dsplit*Math.PI/180);
  131. }
  132. currStep-=step;
  133. }
  134. function Delay(){
  135. scrll=(ns)?window.pageYOffset:0;
  136. Dy[0]=Math.round(DY[0]+=((ymouse)-DY[0])*speed);
  137. Dx[0]=Math.round(DX[0]+=((xmouse)-DX[0])*speed);
  138. for (i=1; i < D.length; i++){
  139. Dy[i]=Math.round(DY[i]+=(Dy[i-1]-DY[i])*speed);
  140. Dx[i]=Math.round(DX[i]+=(Dx[i-1]-DX[i])*speed);
  141. }
  142. y[0]=Math.round(Y[0]+=((ymouse)-Y[0])*speed);
  143. x[0]=Math.round(X[0]+=((xmouse)-X[0])*speed);
  144. for (i=1; i < n; i++){
  145. y[i]=Math.round(Y[i]+=(y[i-1]-Y[i])*speed);
  146. x[i]=Math.round(X[i]+=(x[i-1]-X[i])*speed);
  147. }
  148. ClockAndAssign();
  149. setTimeout('Delay()',20);
  150. }
  151. if (ns||ie)window.onload=Delay;
  152. </SCRIPT>

mood
Publicité
Posté le 15-04-2009 à 18:25:28  profilanswer
 

n°1873538
stealth35
Posté le 15-04-2009 à 21:32:24  profilanswer
 

waaaa il date de 10 ans ton truc,
 
en gros c'est pour faire quoi ? je te le fait en propre et plus simple

n°1873551
scorpio630​00
Posté le 15-04-2009 à 22:31:57  profilanswer
 

oui il est vieux je le reconnais  
 
le but de se script et d'avoir l'heure et la date a coter du curseur de la souris

n°1873563
budlite
Fresh
Posté le 15-04-2009 à 23:19:28  profilanswer
 

scorpio63000 a écrit :

oui il est vieux je le reconnais  
 
le but de se script et d'avoir l'heure et la date a coter du curseur de la souris


C'est vrai que c'est le genre de fonctionnalités que les utilisateurs demandent beaucoup :ange:  
Sinon pour debugger du javascript sur Firefox, tu peux commencer par utiliser l'addon firebug, il t'indiquera au moins la ligne responsable du ( des?) problème(s).


---------------
Fresh
n°1873637
dwogsi
Défaillance cérébrale...
Posté le 16-04-2009 à 09:25:15  profilanswer
 

Ce que la console d'erreur de Firefox fait aussi soit dit en passant. (Ctrl + Shift + J)


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
n°1873774
scorpio630​00
Posté le 16-04-2009 à 13:40:29  profilanswer
 

voici l'erreur que sa me met quand je fais Ctrl + Shift + J

Code :
  1. ymouse = (ns)?evnt.pageY+ClockFromMouseY-(window.pageYOffset):event.y+ClockFromMouseY; Ligne : 199

n°1873776
David Bori​ng
Posté le 16-04-2009 à 13:44:20  profilanswer
 

Manque un e au premier event

n°1873778
scorpio630​00
Posté le 16-04-2009 à 13:49:19  profilanswer
 

le script dais comme l'image si dessous sauf que la date tourne autour de l'horloge
 
http://nsa06.casimages.com/img/2009/04/16/mini_090416014717194329.jpg

n°1873785
stealth35
Posté le 16-04-2009 à 14:05:55  profilanswer
 

ouai plus compliqué ducoup; mais deja pour recuper les jours et faire bouger en fonction de la souris tu peux faire ca

 

<style type="text/css" media="all">
  .date {
   position:absolute;
   z-index:999;
   margin:15px 0 0 15px;
  }
 </style>
 <script type="text/javascript">
   // <![CDATA[
    if (window.addEventListener){
     window.addEventListener("load", addOnLoad, true);
    } else if (window.attachEvent) {
     window.attachEvent("onload", addOnLoad);
    }
   
    var el = null;
   
    function addOnLoad(){
     el = document.createElement('div');
     el.className = 'date';
     document.body.appendChild(el);
     
     document.onmousemove = moveDate;
     window.setInterval(showDate, 1000);    
    }
    function showDate(){
     var date = new Date();
     el.innerHTML = date.toLocaleDateString() + ' ' + date.toLocaleTimeString();
    }
   
    function moveDate(e){
     var x = null;
     var y = null;
     
     if(e){
      x = e.clientX;
      y = e.clientY;
     }else if(event){
      x = event.x;
      y = event.y;
     }
     
     el.style.left = x + 'px';
     el.style.top = y + 'px';
    }
   // ]]>
  </script>


Message édité par stealth35 le 16-04-2009 à 14:07:30
n°1873810
scorpio630​00
Posté le 16-04-2009 à 14:32:18  profilanswer
 

merci je vais essayer voir se que sa donne
 
re cela donne un truc tous banale  
 
merci quand même


Message édité par scorpio63000 le 16-04-2009 à 14:35:58
mood
Publicité
Posté le 16-04-2009 à 14:32:18  profilanswer
 

n°1873866
stealth35
Posté le 16-04-2009 à 15:01:21  profilanswer
 

voila, a toi d'ajouter l'horologe apres ;)
 

<style type="text/css" media="all">
  body{
   font-family:"Lucida Sans Unicode","Lucida Grande",sans-serif
  }
  .date {
   position:absolute;
   z-index:999;
   margin:20px 0 0 20px;
   background-color:#8888ff;
   width:160px;
   height:160px;
  }
  .date span{
   position:absolute;
   font-size:10px;
   font-weight:bold;
   color:#f0f0f0;
  }
 </style>
 <script type="text/javascript">
   // <![CDATA[
    if (window.addEventListener){
     window.addEventListener("load", addOnLoad, true);
    } else if (window.attachEvent) {
     window.attachEvent("onload", addOnLoad);
    }
     
    var el = null;
    var time = [];
     
    function addOnLoad(){
     el = document.createElement('div');
     el.className = 'date';
     document.body.appendChild(el);
     
     rot = document.createElement('div');
     el.appendChild(rot);  
     
     for(var i = 1; i <= 12; i++){
      var a = -(((i / 6) * Math.PI) + (Math.PI * 3));
       
      var span = document.createElement('span');
      span.innerHTML = i;
      span.style.top = 75 + (40 * Math.cos(a)) + 'px';
      span.style.left = 75 + (40 * Math.sin(a)) + 'px';
      el.appendChild(span);
     }
     
     for(var i = 0; i < 3; i++){
      time[i] = [];
      for(var j = 0; j < (i + 3); j++){
       var span = document.createElement('span');
       span.innerHTML = '.';
       el.appendChild(span);
       
       time[i].push(span);
      }
     }
     
     document.onmousemove = moveDate;
     window.setInterval(showDate, 1000);    
    }
    function showDate(){
     var date = new Date();
     var c = [];
     c.push(-((date.getHours() * .5) / 12) * (Math.PI * 2));
     c.push((date.getMinutes() / 60) * (Math.PI * 2));
     c.push(-(date.getSeconds() / 60) * (Math.PI * 2));  
 
 
     for(var i = 0; i < 3; i++){
      for(var j = 0; j < time[i].length; j++){
       time[i][j].style.top = 75 + ((j * 7) * Math.cos(c[i])) + 'px';
       time[i][j].style.left = 75 + ((j * 7) * Math.sin(c[i])) + 'px';
      }
     }
     
     var str = date.toLocaleDateString();
     rot.innerHTML = '';
     
     for(var i = 0; i < str.length; i++){
      var b = (i / str.length) * (Math.PI * 2) + ((date.getSeconds() / 60) * Math.PI);
      var l = str.slice(i, i + 1);
       
      var span = document.createElement('span');
      span.innerHTML = l;
       
      span.style.left = 75 + 60 * Math.cos(b) + 'px';
      span.style.top = 75 + 60 * Math.sin(b) + 'px';
       
      rot.appendChild(span);      
     }
    }
     
    function moveDate(e){
     var x = null;
     var y = null;
     
     if(e){
      x = e.clientX;
      y = e.clientY;
     }else if(event){
      x = event.x;
      y = event.y;
     }
     
     el.style.left = x + 'px';
     el.style.top = y + 'px';
    }
   // ]]>  
  </script>


Message édité par stealth35 le 16-04-2009 à 15:01:56
n°1873896
scorpio630​00
Posté le 16-04-2009 à 15:10:47  profilanswer
 

merci merci merci cela fonctionne  
 
mais comment rendre l'arrière plan de l'horloge transparente car la j'ai un carré violet très clair et l'horloge dessus
 
que veut tu dire quand tu dis a toi d'ajouter l'horloge après
 
merci d'avance

n°1874049
stealth35
Posté le 16-04-2009 à 18:28:05  profilanswer
 

en couleur dans le css  tu met  "transparent"
pour l'horloge faut l'ajoute le calucle sinus cosinus n'est pas bon, faut decalé de xPI

n°1874057
scorpio630​00
Posté le 16-04-2009 à 18:40:38  profilanswer
 

Ok sa a marcher pour la transparence encore merci  
 
pour l'horloge faut l'ajoute le calucle sinus cosinus n'est pas bon, faut decalé de xPI
 
pas compris
 
PS: dommage avec se code sa met l'horloge fixe quand on déplace la souris qu'avec celui que j'ai fournie plus haut quand on deplacer la souris l'horloge flotter et se remetter normalement quand on arreter de bouger la souris

n°1874082
stealth35
Posté le 16-04-2009 à 19:31:48  profilanswer
 

tu voix bien que c'est pas a l'heure...,  si t'a un niveau en math au dessus de la 6eme tu devrais t'en sortir,  
apres pour le déplacement rien t'empeche de le decalé pour faire une effet de flottement,
en meme temps ce code il sert a rien, tout le monde a l'heure sur son ordi  
;)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Question pour Scipt

 

Sujets relatifs
question sur un tableau[résolu]Question SGBD aux utilisateurs de Free, svp
[java] Petite question sur les threadsQuestion bête Aidez moi je vais m'ouvrir les veines sinon
question en opencvQuestion de base pour débuter
Petite question sur stockage de mots de passeQuestion sur niveau necessaire en JAVA
question sur les classesQuestion toute bete, avec un While & For
Plus de sujets relatifs à : Question pour Scipt


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR