Newsgroup: it.comp.lang.javascript
Titolo: Urgente-Perche' non funziona??

Chissa' se c'e' qualcuno cosi' gentile da spiegarmi perche' non
funziona???
<html>
<head>
 <SCRIPT LANGUAGE="JavaScript">
var loaded = 0;
var lastbutton='top';
</SCRIPT >
<SCRIPT LANGUAGE="JavaScript1.2">
function LoadImgs () {
	if (document.images) {
		b_a0 = new Image();
		b_a0.src = "b-a-c.gif";
		b_a1 = new Image();
		b_a1.scr = "b-a-p.gif";
		loaded = 1;
			     }
		     }
function change(Name,No) {
	if (document.images && (loaded == 1) && (document[Name])) {
		document[Name].src = eval("b_" + Name + No  + ".src");
							          }
		          }
function hide() {
	if (document.images && (loaded == 1)) {
		change(lastbutton,0);
					      }
		}
LoadImgs();
</SCRIPT>
</head>
<body MARGINHEIGHT=0 MARGINWIDTH=0 TOPMARGIN=0 LEFTMARGIN=0>
<tr valign=top>
		<td align=left>
		<table BORDER=0 CELLSPACING=0 CELLPADDING=0
WIDTH="100%" BGCOLOR="#c3c3c3" >		
			<td align=center>
				<A HREF="/downloads.php3"
				onMouseover = "change('a',1)" 
				onMouseout = "hide()"> 
				<IMG SRC="b-a-c.gif" height=20
width=50 border=0 ALT="File"><br></td>
			<td align=right><img SRC="b-b-c.gif" height=20
width=50><br></td>
			<td align=right><img SRC="b-c-c.gif" height=20
width=50><br></td>
			<td align=right><img SRC="b-d-c.gif" height=20
width=50><br></td>
			<td align=right><img SRC="b-e-c.gif" height=20
width=50><br></td>
			<td align=right><img SRC="b-f-c.gif" height=20
width=50><br></td>
			<td align=right><img SRC="senzatit.gif"
height=20 width=300><br></td>
 
		</tr>		
		</table>
		</td>
		</tr>
</body>
</html>

Dunque...
Tanto per inziare, se vuoi riferirti alle immagini sarebbe più corretto
usare:
    document.images[Name]....
al posto di
    document[Name]....
Senza dimenticare che per riferirti ad un'immagine devi prima attribuirle un
nome:
    <img name="a" ....
Inoltre hai giustamente dichiarato un "lastbutton" (il cui valore iniziale
top è però in questo caso ridondante), dimenticatoti però di aggiornarlo ad
ogni mouseover:
    lastbutton=Name
Ultima cosa: di norma, quando le usi globalmente, evita di dichiarare le
variabili come locali, perché c'è spesso il rischio che si comportino
realmente come tali, non risultando poi visibili al di fuori della funzione
(mi riferisco alle new Image(): se la cosa funziona su IE, non è per forza
detto che sia così su tutti i browsers...)
Ah, dimenticavo: il flag "loaded" non sarà per niente attendibile sul reale
stato di caricamento delle immagini. Per fare in fretta faresti prima ad
attendere onLoad, o controllare Image.readyState (IE), cmq lì poi fai un po'
tu in base alle tue esigenze...
Alla fine ne verrebbe fuori una cosa simile:
(fammi sapere..)
<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
var loaded = 0;
var lastbutton;
</SCRIPT >
<SCRIPT LANGUAGE="JavaScript1.2">
if (document.images) {
b_a0 = new Image();
b_a0.src = "b-a-c.gif";
b_a1 = new Image();
b_a1.src = "b-a-p.gif";
loaded = 1;
}
function change(Name,No) {
if (document.images && (loaded == 1) && (document.images[Name])){
document.images[Name].src = eval("b_" + Name + No  + ".src");
lastbutton=Name
          }
          }
function hide() {
if (document.images && (loaded == 1)) {
change(lastbutton,0);
      }
}
</SCRIPT>
</head>
<body MARGINHEIGHT=0 MARGINWIDTH=0 TOPMARGIN=0 LEFTMARGIN=0>
<tr valign=top>
<td align=left>
<table BORDER=0 CELLSPACING=0 CELLPADDING=0
WIDTH="100%" BGCOLOR="#c3c3c3" >
<td align=center>
<A HREF="/downloads.php3"
onMouseover = "change('a',1)"
onMouseout = "hide()">
<IMG name="a" SRC="b-a-c.gif" height=20
width=50 border=0 ALT="File"><br></td>
<td align=right><img SRC="b-b-c.gif" height=20
width=50><br></td>
<td align=right><img SRC="b-c-c.gif" height=20
width=50><br></td>
<td align=right><img SRC="b-d-c.gif" height=20
width=50><br></td>
<td align=right><img SRC="b-e-c.gif" height=20
width=50><br></td>
<td align=right><img SRC="b-f-c.gif" height=20
width=50><br></td>
<td align=right><img SRC="senzatit.gif"
height=20 width=300><br></td>
</tr>
</table>
</td>
</tr>
</body>
</html>
CiaooooooooooooooooooooooooooooooooaiC.
                                      by
-------------------------------------------------------------------
     Ðarius. <- 
www.infotronica.it/darius
 ->
                 ICQ# 36150792
      - Art of JavaS.™ - 
www.probo.it/aoj
-------------------------------------------------------------------

Grazie dei consigli ma perche' continua a non funzionare???
<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
var loaded = 0;
var lastbutton;
</SCRIPT >
<SCRIPT LANGUAGE="JavaScript1.2">
	if (document.images) {
		b_a0 = new Image();
		b_a0.src = "b-a-c.gif";
		b_a1 = new Image();
		b_a1.scr = "b-a-p.gif";
		loaded = 1;
			     }
 
function change(Name,No) {
	if (document.images && (loaded == 1) &&
(document.images[Name])){
		document.images[Name].src = eval("b_" + Name + No  +
".src");
		lastbutton=name


Grazie dei consigli ma perche' continua a non funzionare???
Innanzitutto perché devi fare attenzione alle minuscole-maiuscole:
    lastbutton=name   // SBAGLIATO
è diverso da:
    lastbutton=Name  // GIUSTO
Inoltre hai scritto "scr" al posto di "src":
    b_a1.scr = "b-a-p.gif";
Non so perché non hai usato il codice che ti ho mandato che funzionava
perfettamente...
:)



Infatti ho usato il codice che mi hai mandato tu e ti ringrazio.....
ma vorrei riuscire a capirci  qualche cosa di piu'      !!!!!!!
:-)