Page 1 sur 1

Script dans un Script

Posté : 04 sept. 2005, 19:27
par merlin2204
Est-il possible d'avoir un javascript dans un autre ? Voici le code pour que vous puissiez comprendre mon problème. Quand je code comme ca, le 1er <script> s'arrete avec le </script> qui ne lui correspond pas (il s'arrete ici :<script src='http://www.ClanBase.com/cbrank.php?cid= ... '></script>)

Code : Tout sélectionner

<script type="text/javascript"> /*********************************************** * Fading Scroller- © Dynamic Drive DHTML code library (www.dynamicdrive.com) * This notice MUST stay intact for legal use * Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code ***********************************************/ var delay = 5000; //set delay between message change (in miliseconds) var maxsteps=30; // number of steps to take to change from start color to endcolor var stepdelay=40; // time in miliseconds of a single step //**Note: maxsteps*stepdelay will be total time in miliseconds of fading effect var startcolor= new Array(255,255,255); // start color (red, green, blue) var endcolor=new Array(169,169,169); // end color (red, green, blue) var fcontent=new Array(); begintag='<div style="font: normal 10px Arial; padding: 5px;">'; //set opening tag, such as font declarations fcontent[0]="<b><center>Rang de la Team =).BTL.(=<br><script src='http://www.ClanBase.com/cbrank.php?cid=865897&lid=2171&type=js'></script></center></b>"; fcontent[1]="<b><center>Ladder Battlefield 2<br>Conquest - 16</b>"; fcontent[2]="<center><a target='blank' href='http://www.clanbase.com/rating.php?lid=2171'><b>Clanbase.com</b></a><br></center>"; closetag='</div>'; var fwidth='144px'; //set scroller width var fheight='30px'; //set scroller height var fadelinks=1; //should links inside scroller content also fade like text? 0 for no, 1 for yes. ///No need to edit below this line///////////////// var ie4=document.all&&!document.getElementById; var DOM2=document.getElementById; var faderdelay=0; var index=0; /*Rafael Raposo edited function*/ //function to change content function changecontent(){ if (index>=fcontent.length) index=0 if (DOM2){ document.getElementById("fscroller").style.color="rgb("+startcolor[0]+", "+startcolor[1]+", "+startcolor[2]+")" document.getElementById("fscroller").innerHTML=begintag+fcontent[index]+closetag if (fadelinks) linkcolorchange(1); colorfade(1, 15); } else if (ie4) document.all.fscroller.innerHTML=begintag+fcontent[index]+closetag; index++ } // colorfade() partially by Marcio Galli for Netscape Communications. //////////// // Modified by Dynamicdrive.com function linkcolorchange(step){ var obj=document.getElementById("fscroller").getElementsByTagName("A"); if (obj.length>0){ for (i=0;i<obj.length;i++) obj[i].style.color=getstepcolor(step); } } /*Rafael Raposo edited function*/ var fadecounter; function colorfade(step) { if(step<=maxsteps) { document.getElementById("fscroller").style.color=getstepcolor(step); if (fadelinks) linkcolorchange(step); step++; fadecounter=setTimeout("colorfade("+step+")",stepdelay); }else{ clearTimeout(fadecounter); document.getElementById("fscroller").style.color="rgb("+endcolor[0]+", "+endcolor[1]+", "+endcolor[2]+")"; setTimeout("changecontent()", delay); } } /*Rafael Raposo's new function*/ function getstepcolor(step) { var diff var newcolor=new Array(3); for(var i=0;i<3;i++) { diff = (startcolor[i]-endcolor[i]); if(diff > 0) { newcolor[i] = startcolor[i]-(Math.round((diff/maxsteps))*step); } else { newcolor[i] = startcolor[i]+(Math.round((Math.abs(diff)/maxsteps))*step); } } return ("rgb(" + newcolor[0] + ", " + newcolor[1] + ", " + newcolor[2] + ")"); } if (ie4||DOM2) document.write('<div id="fscroller" style="border:1px solid black;width:'+fwidth+';height:'+fheight+'"></div>'); if (window.addEventListener) window.addEventListener("load", changecontent, false) else if (window.attachEvent) window.attachEvent("onload", changecontent) else if (document.getElementById) window.onload=changecontent </script>

Posté : 04 sept. 2005, 19:33
par HD
j'ai pas tout saisi et j'ai pas envie de me "taper" 200 lignes d'un code dont je ne connait meme pas l'utilité. mais tout ce que je peux te dire c'est qu'il est possible d'avoir
<script>code 1 en js </script>
<script>code 2 en js </script>
(en veillant à eviter tout conflit entre les 2, d'où l'utilité de nous expliquer l'objectif des scripts)

Posté : 04 sept. 2005, 19:41
par merlin2204
Désolé d'avoir collé mon script comme ca, je vais essayer de résumer et d'être un peu plus clair.

J'ai un script qui fait défiler des texte les uns apres les autres dans une case. Hors l'un des texte comporte un chiffre que je vais chercher grace à un script. donc j'obtiens quelque chose cette forme :

Code : Tout sélectionner

<script> ... ... <script src='http://www.ClanBase.com/cbrank.php?cid=865897&lid=2171&type=js'></script> ... ... </script>

Pour info : http://www.ClanBase.com/cbrank.php?cid= ... 71&type=js le 2ème script retourne ca : document.write(0) ou 0 est la valeur que je cherche à afficher.

PS: j'y connais vraiment pas grand chose en javascript, soyez indulgent :oops:

Posté : 04 sept. 2005, 19:50
par HD
le js c'est pas trop mon truc don je te propose ceci :
dans le debut de ta page place ceci (c'est du php)
<?php
$valeur = file_get_contents (http://www.ClanBase.com/cbrank.php?cid=865897&lid=2171&type=js);
?>
et là où tu veux afficher ce qui est recupéré tu met un simple :
<?php
echo $valeur ;?>
mais si tu veux du 100% js , attend un peu les autres membres