Newsgroup: it.comp.lang.javascript
Titolo: URL randomizzate

Salve,
..ho cercato uno javascript che mi aprisse
ogni volta un url diverso all'apertura del sito (..il frame centrale)
ma ho trovato soltanto quelli che richiedono di cliccare
su un link o bottone!!
..l'unico trovato era soltanto per le immagini ..ma non funziona con le
url!!
Saluti e ringrazio in anticipo per un aiutino!
Alessio

Alessio wrote:

Se ci posti il codice di quello per le immagini, possiamo vedere se è modificabile all'uopo (ho quasi finito di leggere il vocabolario, tiè :-))))
Niente è impossibile in IT.COMP.LANG.JAVASCRIPT, a patto che sia JavaScript :-)
--
Ciao, Riccardo
-----------------------------------------------------------------------
http://www.bottegasanlorenzo.it
http://www.jsdir.com
Need a JavaScript password?
http://www.agora.it/Ri.Riccardi/ingresso.html
-----------------------------------------------------------------------
"Any sufficientely advanced technology is indistinguishable from magic"
Arthur Charles Clarke
-----------------------------------------------------------------------
.
.
.
.
.
 . . . . . . I Fantastici 4 stanno arrivando . . . . . .

<SCRIPT language="javascript">
<!-- Image Selector
// Cameron Gregory - 
cam...@bloke.com
// 
http://www.bloke.com/
// 
http://www.bloke.com/javascript/Random/
// 
http://www.bloke.com/javascript/Random/link.html
// This line and about must remain .. then you can use it for free...
//
// ChangeLog
//
//
// Sat Sep 21 16:36:47 EDT 1996
//   Added associate URL list.
//
// Fri Sep 13 18:36:20 EDT 1996
//   Created from the base of Selector()
//
// Usage:
//  RandomImage(images)
//  RandomImageLong(images,iparams)
//  RandomImageLink(images,urls)
//  RandomImageLinkLong(images,urls,iparams)
//     images           is space or comma separated file list
//     urls             is space or comma separated list of url's
//     iparams          params to add to <img>
function RandomImageLong(images,iparams)
{ 
/* si: start index  
** i: current index 
** ei: end index 
** cc: current count 
*/ 
 si = 0;  
 ci=0; 
 cc=0; 
 imageSet = new Array(); 
 ei = images.length; 
  for (i=1;i<ei;i++) { 
    if (images.charAt(i) == ' ' || images.charAt(i) == ',') { 
      imageSet[cc] = images.substring(si,i); 
      cc++; 
      si=i+1; 
      } 
    } 
  ind = Math.floor(Math.random() *cc); 
  document.writeln("<img "+iparams+" src="+imageSet[ind]+" alt=\""+imageSet[ind]+"\">"); 
} 
function RandomImage(images) 
{ 
  RandomImageLong(images," "); 
} 
function RandomImageLinkLong(images,urls,iparams) 
{ 
/* si: start index  
** i: current index 
** ei: end index 
** cc: current count 
*/ 
 imageSet = new Array(); 
 urlSet = new Array(); 
 si = 0;  
 ci=0; 
 cc=0; 
 ei = images.length; 
  for (i=1;i<ei;i++) { 
    if (images.charAt(i) == ' ' || images.charAt(i) == ',') { 
      imageSet[cc] = images.substring(si,i); 
      cc++; 
      si=i+1; 
      } 
    } 
  ind = Math.floor(Math.random() *cc); 
 si = 0;  
 ci=0; 
 cc=0; 
 ei = urls.length; 
  for (i=1;i<ei && cc <=ind ;i++) { 
    if (urls.charAt(i) == ' ' || urls.charAt(i
) == ',')
      urlSet[cc] = urls.substring(si,i);
      cc++;
      si=i+1;
      }
    }
  //document.writeln("<img "+iparams+" src="+imageSet[ind]+"
alt=\""+imageSet[ind]+"\">");
  document.writeln("<a href=\""+urlSet[ind]+"\"><img "+iparams+"
src="+imageSet[ind]+" alt=\""+imageSet[ind]+"\"></a>");
}
function RandomImageLink(images,urls)
{ 
  RandomImageLinkLong(images,urls,"border=0"); 
} 
// End Script --> 
</SCRIPT> 
...Questa va nel BODY....
<script language="javascript">
RandomImageLink("dog2-small.gif,condo-view-small.gif,spider3-small.gif,","dog2-small.gif,condo-view-small.gif,spider3-small.gif,");
</script><br>
Questo e' lo javascript x le immagini ... ti ringrazio se puoi modificarlo per
poterlo utilizzare per le Url !!
Saluti e Grazie!!
Alessio

 poterlo utilizzare per le Url !!
Troppo complicato da modificare solo per delle URL.
Ti posto entro stanotte ;-) uno script fatto ad hoc.


 ogni volta un url diverso all'apertura del sito (..il frame centrale)
<SCRIPT>
<!--
var links = new Array()
 links[0] = "pagina0.html";
 links[1] = "pagina1.html";
 links[2] = "pagina2.html";
 links[3] = "pagina3.html";
top.frames[NUMERO_DEL_TUO_FRAME_CENTRALE].location.replace(links[Math.round(links.length*Math.random())-1])
//-->
</SCRIPT>
oppure:
top.frames[NUMERO_DEL_TUO_FRAME_CENTRALE].location=links[Math.round(links.length*Math.random())-1]
che a differenza dell'altro lascia nella history del frame la pagina iniziale che deve comunque esserci (basta una pagina vuota con solo <HTML><BODY> </BODY></HTML>) tanto per non avere errori dal
frameset.
Per aggiungere gli altri link basta che continui con l'array (ovvio :-) avendo cura di non spezzare la numerazione (meno ovvio) se ne togli qualcuno.
