Newsgroup: it.comp.lang.javascript
Titolo: cambiare bgcolor con j-script

In una pagina web, vorrei cambiare dinamicamente all'entrata il colore di
sfondo della mia pagina, supponiamo da nero a rosso.
Ricercando in internet ho trovato nel sito 
www.html.it
 ho trovato uno
script
(il primo di questo indirizzo 
http://www.html.it/jscript/background/index.html
)
con questa spiegazione:
"Con questo script, all'entrata della tua home page, lo sfondo viene
sfumato secondo dei colori che vengono inseriti nello script, per poi
ritornare al background originale della pagina"
io ho provato, modificando leggermente lo script:
"<!-- w w w . h t m l . i t -->
<HTML>
<HEAD>
<!-- Codice scaricato gratuitamente da HTML.it, il sito italiano sul Web
publishing
 
http://www.html.it
 -->
<TITLE>Esempi Javascript: esempio pratico </TITLE>
<script>
function initArray() {
  this.length = initArray.arguments.length
  for (var i = 0; i < this.length; i++)
    this[i+1] = initArray.arguments[i]
}
var hexChars = "0123456789ABCDEF";
function Dec2Hex (Dec) {
  var a = Dec % 16;
  var b = (Dec - a)/16;
  hex = "" + hexChars.charAt(b) + hexChars.charAt(a);
  return hex;
}
function bgChanger (begin, end, steps) {
  steps = steps -1 ;
  redA     = begin.charAt(0) + begin.charAt(1);
  red_valA = parseInt(redA,'16');
  redB     = end.charAt(0) + end.charAt(1);
  red_valB = parseInt(redB,'16');
  red_int  = ((red_valB - red_valA) / steps) * -1;
  grnA     = begin.charAt(2) + begin.charAt(3);
  grn_valA = parseInt(grnA,'16');
  grnB     = end.charAt(2) + end.charAt(3);
  grn_valB = parseInt(grnB,'16');
  grn_int  = ((grn_valB - grn_valA) / steps) * -1;
  bluA     = begin.charAt(4) + begin.charAt(5);
  blu_valA = parseInt(bluA,'16');
  bluB     = end.charAt(4) + end.charAt(5);
  blu_valB = parseInt(bluB,'16');
  blu_int  = ((blu_valB - blu_valA) / steps) * -1;
  step = 2;
  red = red_valA;
  grn = grn_valA;
  blu = blu_valA;
  document.bgColor = begin;
  while ( steps >= step ) {
    red -= red_int;
    red_round = Math.round(red);
    red_hex = Dec2Hex(red);
    grn -= grn_int;
    grn_round = Math.round(grn);
    grn_hex = Dec2Hex(grn);
    blu -= blu_int;
    blu_round = Math.round(blu);
    blu_hex = Dec2Hex(blu);
    document.bgColor = red_hex + grn_hex + blu_hex;
//    document.write("<br>bgcolor = " + red_hex + grn_hex + blu_hex);
    step++;
  }
  document.bgColor = end;
}
</script>
<script>
<!-- 
// nero a nero (pausa)
//  bgChanger("000000","000000",25);
// nero a rosso
  bgChanger("000000","FF0000",25);
// rosso a nero
//  bgChanger("FF0000","000000",25);
// rosso a viola 
//  bgChanger("000000","AA00EE",25);
// viola a nero
//  bgChanger("AA00EE","000000",25);
// nero a blu
//  bgChanger("000000","0000FF",25);
// blu a nero
//  bgChanger("0000FF","000000",25);
// nero a nero (pausa)
//  bgChanger("000000","000000",25);
// -->
</script>
</HEAD>
<BODY bgcolor="red">
 
</body>
</html>
<!-- w w w . h t m l . i t -->"
Voglio trasformare il colore di entrata "nero" in quello di default che è
rosso, sfumandolo.
Quello che si ottiene e' la presentazione di una pagina bianca, che dopo
un istante diventa immediatamente rossa senza sfumare.
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 ritornare al background originale della pagina"
Cambia esempio: non c'è un setTimeout, e senza non capisco come possa
funzionare...cambia sì il colore, ma se non si dà "respiro" al browser (con
setTimeout) a video si vedrà solo il colore iniziale e finale (che è
correttamente quello che succede).
-- 
"Ti sei salvato
 o sei entrato in banca pure tu?"
									    A.V.

Cristiano Larghi ha scritto:


Non so che cosa è setTimeout, in pratica che cosa devo fare, hai un
esempio??????
grazie


 esempio??????
No, però se cerchi per esempio "javascript fade bgcolor" in google trovi
qualche migliaio di link
