[ JavaScript ] Visualizzazione di avatar diversi al click!
[ JavaScript ] Visualizzazione di avatar diversi al click! postato il 21/02/2015 16:26:49 nel forum programmazione, open source e hosting e modificato da wingsofmemories il 21/02/2015 16:29:08
Buongiorno a tutti!
Avremmo da chiedere un consiglio con un problema riguardante un codice JavaScript che nelle ultime settimane ci sta dando qualche problemino!
Quel che abbiamo tentato di fare è, semplicemente, di inserire delle piccole immagini-link ad avatar secondari che, al click, sostituiscano l'avatar principale (in pratica, cliccando su queste immaginine viene cambiato l'avatar visualizzato nella scheda).
Qui di seguito l'esempio della cosa:
http://www.ourwingsofmemories.com/schedaprova4.php?pg=Kairen ↗
Come si può notare, subito sotto l'avatar sono presenti diverse immaginine cliccando le quali l'immagine principale visualizzata cambia; il punto è che, se aprendo le schede in una pagina a parte il codice funziona, nel momento in cui queste sono aperte nel frame interno della land non funziona proprio più nulla, e anche a cliccare sulle mini-immaginine l'avatar principale non cambia.
Il codice che abbiamo usato, non essendo particolarmente pratici di Java, è il seguente che abbiamo creato seguendo le istruzioni di Html.it:
<img src="<?= $UrlImg ?>" name="galle" width=200><A href="javascript:apri(3)">
<script language="JavaScript">
function apri(conta) {
nuovo=new Array("<?= $UrlImg ?>","<?= $UrlImg2 ?>","<?= $UrlImg3 ?>","<?= $UrlImg4 ?>","<?= $UrlImg5 ?>","<?= $UrlImg6 ?>")
parent.document.galle.src=nuovo[conta]
}
</script></a>
<table>
<tr>
<td><A href="javascript:apri(0)"><IMG src="<?= $UrlImg ?>" width=20 height=50 title="<?=$rs['DescrizionePrimoAvatar']?>"></A>
<td><A href="javascript:apri(1)"><IMG src="<?= $UrlImg2 ?>" width=20 height=50 title="<?=$rs['DescrizioneSecondoAvatar']?>"></A>
<td><A href="javascript:apri(2)"><IMG src="<?= $UrlImg3 ?>" width=20 height=50 title="<?=$rs['DescrizioneTerzoAvatar']?>"></A>
<td><A href="javascript:apri(3)"><img src="<?= $UrlImg4 ?>" width=20 height=50 title="<?=$rs['DescrizioneQuartoAvatar']?>"></A>
<td><A href="javascript:apri(4)"><img src="<?= $UrlImg5 ?>" width=20 height=50 title="<?=$rs['DescrizioneQuintoAvatar']?>"></A>
<td><A href="javascript:apri(5)"><img src="<?= $UrlImg6 ?>" width=20 height=50 title="<?=$rs['DescrizioneSestoAvatar']?>"></A>
</tr>
</table>
I vari "UrlImg" sono i campi del Database che contengono i diversi possibili avatar, mentre i "DescrizionePrimoAvatar" e simili sono, similmente, i title personalizzabili per ognuno dei detti avatar.
Ora, il problema è che il codice funziona bene e la "galleria" è perfettamente funzionante.. finché si apre una Scheda PG in una pagina a parte; se invece la scheda viene regolarmente aperta al click nel frame del GdR, ecco che anche a cliccare non succede niente.
Dando per scontato che la struttura in frame e le tabelle vadano abbandonate poiché entrambe appartenenti alla preistoria del web, il problema con lo script potrebbe dipendere da questo?
Magari il fatto che lo script sia troppo più recente rispetto alla stessa struttura in frame, o cosine del genere? O magari Java se usato in frame ha bisogno di qualche specifica extra?
Premetto che nelle altre parti del codice della Scheda PG ci sono altri codici JavaScript e funzionano perfettamente nonostante la detta struttura, quindi mi sorge il dubbio che il problema sia legato ad un qualche conflitto fra la specifica Funzione "Conta" e i frame!
Grazie in anticipo per qualunque aiuto e scusate il disturbo!
Pagine → 1
21/02/2015 17:06:03
parent.document.galle.src=nuovo[conta]
in pratica dice tradotto in soldoni:
Risali al frame padre che contiene quello attuale, e li cerca l'elemento con il nome galle e cambia il contenuto dell'attributo src con il valore contenuto nel record conta dell'array nuovo.
Se lo script viene aperto in una pagina in una finestra a parte la pagina con la scheda sarà l'unico frame in quella pagina quindi il parent non avrà effetto non essendoci un frame parent. quindi la ricerca dell'elemento nominato come galle avverrà all'0interno della pagina stessa (infatti li vi funziona)
se la pagina invece è un frame all'interno di un altra pagina quel parent fa cercare quell'elemento nella frame padre ovviamente non trovandolo.
Dovrebbe bastare dirmuovere quel parent. prima del document e dovrebbe funzionare tutto sia in pagina esterna che interna alla land
21/02/2015 17:14:15
Ciao!
Ho fatto come dici e ora in effetti funziona tutto!
Grazie mille davvero, sei stato gentilissimo!
Da qui in poi vedo di piazzarmi a studiare come si deve Java!
Credo che il post si possa chiudere!
Discussione seguita da
Pagine → 1
Rispondi alla Discussione Segui Discussione Inoltra Discussione Forum Programmazione, Open Source e Hosting Elenco Forum
Articoli, Interviste e altre Risorse!
Crossout ↗
Wuthering Waves ↗