HighDots Forums  

come ripetere lo stesso switch?

Javascript (Italian) Il linguaggio JavaScript (it.comp.lang.javascript)


Discuss come ripetere lo stesso switch? in the Javascript (Italian) forum.



Reply
 
Thread Tools Display Modes
  #1  
Old   
mare
 
Posts: n/a

Default come ripetere lo stesso switch? - 09-11-2003 , 11:38 AM






Ciao,
ho un piccolo problemino con lo switch delle immagini:
mettiamo che io abbia 2 immagini A e B che devono switchare (da A a B) per 2
volte nella stessa pagina.
Chiamerò quindi in 2 celle diverse la stessa immagine A per 2 volte.
A dovrebbe switchare in B sia nella prima che nella seconda cella, ma per
quanto ho visto succede che al passaggio del mouse sulla 1°cella l'immagine
switcha correttamente mentre al passaggio sull'immagine A della 2°cella
questa non switcha in B, ma al contrario sarà sempre l'immagine A della
1°cella a switchare.

Ora l'unico modo con cui riesco ad aggirare il problema, è quello di
chiamare sia A che B in modi diversi ogni volta che sono ripetuti nella
stessa pagina cosicche risultino essere immagini diverse, ma questo
ralennterebbe il sito notevolmente visto che devo ripetere lo stesso switch
molte volte nella mia pagina e ci sarebbero quindi da scaricare molte A e B
mentre potrebbero essere solo 2.

<table>
<tr>
<td><a href=melb.jpg onmouseover="document.getElementById('img').src =
'img1.gif'"onmouseout="document.getElementById('im g').src = 'img.gif'"
target=_blank><img id="img"src="img.gif" border=0></a></td>
<td><a href=melb.jpg onmouseover="document.getElementById('img').src =
'img1.gif'"onmouseout="document.getElementById('im g').src = 'img.gif'"
target=_blank><img id="img"src="img.gif" border=0></a></td>
</tr>
</table>

Bah spero di essermi spiegato bene,
Sapreste aiutarmi?
Cmq grazie per ogni aiuto,
Ciao,
Mare.

P.S. se ho tarato NG mi scuso e vi prego di indicarmi quello giusto









Reply With Quote
  #2  
Old   
ZER0
 
Posts: n/a

Default Re: come ripetere lo stesso switch? - 09-12-2003 , 01:53 PM






mare wrote:

Quote:
mettiamo che io abbia 2 immagini A e B che devono switchare (da A a B) per 2
volte nella stessa pagina.
Indichiamo le rispettive sorgenti con A.jpg e B.jpg, giusto per comodita'.

Quote:
Chiamerò quindi in 2 celle diverse la stessa immagine A per 2 volte.
Bene.

Quote:
Ora l'unico modo con cui riesco ad aggirare il problema, è quello di
chiamare sia A che B in modi diversi
Esattamente, non dovresti assegnargli lo stesso name, men che meno lo
stesso ID (che e' univoco).

Quote:
stessa pagina cosicche risultino essere immagini diverse, ma questo
ralennterebbe il sito notevolmente visto che devo ripetere lo stesso switch
molte volte nella mia pagina e ci sarebbero quindi da scaricare molte A e B
No, non funziona cosi'. Se tu hai 20 immagini con name diverso, ma che
caricano tutte "A.jpg" come source; A.jpg viene scaricato una volta sola
non venti (e' grazie a questo meccanismo di cache che si puo' ottenere
il preloading).

Questo, ovviamente, ammesso e concesso che non sia stata disabilitata la
cache (sul client e/o tramite proxy/firewall o altro).

Quote:
mentre potrebbero essere solo 2.
Sono solo due, almeno il client ne scarica solo due. Esempio pratico:

<img name="a1" src="A.jpg" width="160" height="100" alt="" border="0" />
<img name="a2" src="A.jpg" width="160" height="100" alt="" border="0" />
<img name="a3" src="A.jpg" width="160" height="100" alt="" border="0" />

Anche se le immagini sono 3, A.jpg viene scaricato una volta sola.

Quote:
td><a href=melb.jpg onmouseover="document.getElementById('img').src =
'img1.gif'"onmouseout="document.getElementById('im g').src = 'img.gif'"
Questo errore e' gravissimo. Non puoi avere elementi html con lo stesso
ID. L'ID deve essere univoco.

Quote:
Bah spero di essermi spiegato bene,
Spero di averti capito ^_^"

Quote:
Sapreste aiutarmi?
<script type="text/javascript">
var imgA=new Image(),
imgB=new Image();

imgA.src="img.gif";
imgB.src="img1.gif";

</script>

<a href="#"
onmouseover="document.images['a'].src=imgB.src"
onmouseout="document.images['a'].src=imgA.src">

<img name="a" src="img.gif" width="160" height="100" alt="" border="0" />

</a>

<a href="#"
onmouseover="document.images['b'].src=imgB.src"
onmouseout="document.images['b'].src=imgA.src">

<img name="b" src="img.gif" width="160" height="100" alt="" border="0" />

</a>

Quote:
Cmq grazie per ogni aiuto,
Temo di aver poco chiaro il tuo esatto problema, ma credo di aver capito
il contesto generale, e che il codice che ti ho dato, in un modo o
nell'altro, possa esserti d'aiuto. In caso specifica meglio cio' che
desideri ottenere, e vediamo di aggiustare il tiro.

Quote:
P.S. se ho tarato NG mi scuso e vi prego di indicarmi quello giusto
Tranquillo, e' quello giusto.

--
C'ya,
ZER0 :: coder.gfxer.webDesigner();

"When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)



Reply With Quote
  #3  
Old   
Alessandro Cara
 
Posts: n/a

Default Re: come ripetere lo stesso switch? - 09-12-2003 , 03:16 PM



ZER0 wrote:
[cut]
Quote:
Questo errore e' gravissimo. Non puoi avere elementi html con lo stesso
ID. L'ID deve essere univoco.
scusa ZERO, ma se a me servisse "degradato"?
N.B. sto qui per imparare e non sono entrato nel merito della questione, stavo
valutando questa tua indicazione.

--
a.cara
Togli qualcosa dall'email


Reply With Quote
Reply




Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off



Powered by vBulletin Version 3.5.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.