Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 30
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    236

    gestione di più immagine

    ho la seguente pagina html(frame.html)

    <html>
    <head>
    <script>
    function index(numero){
    var nWindow;
    var pag = 'det.html?'+numero;
    nWindow=window.open(pag,"","width=300,height=400") ;
    }
    </script>
    </head>
    <body>

    <IMG src= "path_immagine.gif" border= "0" USEMAP = "#magica" width="897" height="754">
    <MAP name = "magica">
    (??)<area shape="circle" coords = "291,555,14" href="#" alt = "ciao" onclick="index(1)">
    (**)<area shape="circle" coords = "365,540,14" href="#" alt = "buondì" onclick="index(2)">
    ........
    </map>
    </body>
    </html>

    dove det.html è una pagina che apre semplicemente una nuova finestra con l'immagine del dettaglio della zona cliccata.
    il problema è che mi funziona solo nel primo caso perchè nel file det.html cè solo una immagine relativa alla prima area cliccabile che ho mandato.
    dovrei fare in modo che in base alla variabile "numero" passata con onclick nel file det.html venga caricata una immagine diversa....devo fare un case?

    ad esempio se clicco su (??) "numero" = 1 quindi dovrei includere nel file det.html l'immagine relativa alla zona 1 .....

    spero capiate!

  2. #2
    Utente di HTML.it L'avatar di v2v2
    Registrato dal
    Sep 2002
    Messaggi
    221

    Re: gestione di più immagine

    Originariamente inviato da FedeF79

    spero capiate!

    vediamo...
    codice:
    <script> 
    var imm=new Array();
    imm[0]="Image0.jpg";
    imm[1]="Image1.jpg";
    
    function index(numero){ 
    var nWindow; 
    nWindow=window.open("void.htm","","width=300,height=400");
    nWindow.document.write('[img]+imm[numero]+[/img]');
    } 
    </script>
    ...inserisci questo script e compila l'array con le img associate ai vari numeri.

    Se le img iniziano tutte con le stesse lettere(ES image0;image1;image2) puoi usare anche questo
    codice:
    <script> 
    var imm;
    function index(numero){ 
    var nWindow;
    imm="Image"+numero+".jpg";
    nWindow=window.open("void.htm","","width=300,height=400");
    nWindow.document.write('[img]+imm+[/img]');
    } 
    </script>
    Only the good die young
    all the evil seem to live forever

    :metallica

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    236

    help

    nella nuova finestra devo includere anche:
    1)un bottone che chiude la finestra;
    2)il titolo
    3)centrare entrambi nella finestra <center></center>

    ti mando il codice di ciò che deve stare nella finestra(esempio relativo ad un click):
    <p align=center><font face=Arial>Incrocio: Di Vittorio-Liutprando-Pastrengo</font></p>
    <center>
    [img]Immagini_gif/01.gif[/img]

    <a href="javascript:window.close();">
    [img]Immagini_gif\close.gif[/img]</a>
    </center>

    ovviamente il titolo cambia per ogni finestra, è diverso per ogni immagine...come gestisco i titoli?

  4. #4
    Utente di HTML.it L'avatar di v2v2
    Registrato dal
    Sep 2002
    Messaggi
    221
    Puoi inserire questo:
    codice:
    <script> 
    var imm="";
    function index(numero,titolo){ 
    var nWindow;
    imm=numero+".gif";
    nWindow=window.open("void.htm","","width=500,height=500");
    nWindow.document.write('<p align=center><font face=Arial>'+titolo+'</font></p><center>[img]Immagini_gif/'+imm+'[/img]
    [img]Immagini_gif\close.gif[/img]</center>');
    } 
    </script>
    e richiamarlo così
    <area ... onclick="index('01','titolo01')">
    <area ... onclick="index('02','titolo02')">
    Only the good die young
    all the evil seem to live forever

    :metallica

  5. #5
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    236

    dettaglio nella stessa pagina

    grazie per i suggerimenti che mi hai dato, è tutto ok!
    però mi serve un altro consiglio.
    devo fare in modo che quando si clicca su un punto di una immagine il dettaglio compaia nella stessa finestra (void.html)e non in un'altra come invece accade.
    vorrei inserire i tasti precedente successivo in modo da consentire all'utente di visulizzare i dettagli precedenti e successivi da lui cliccati in precedenza.
    come si fa?

  6. #6
    Utente di HTML.it L'avatar di v2v2
    Registrato dal
    Sep 2002
    Messaggi
    221
    prova questo:
    codice:
    <script>
    var max=2;	//numero di titoli
    var titoli=new Array();
    
    // inserisci qui tutti i titoli
    titoli[1]="titol01";
    titoli[2]="titol02";
    
    var imm="";
    max=max+1;
    function index(numero){ 
    var nWindow;
    imm=numero+".gif";
    if (numero.charAt(0)==0)numero=numero.charAt(1);
    nWindow=window.open("void.htm","DETTAGLI","width=500,height=500");
    nWindow.document.write('<');
    nWindow.document.write('script>self.focus();var title=new Array();');
    for(i=1;i<max;i++){nWindow.document.write('title['+i+']="'+titoli[i]+'";')};
    nWindow.document.write('function va(n){var x="";var y=0;var pp=true;x=document.getElementById("imm").src;y=parseInt(x.lastIndexOf("/"));x=x.charAt(y+1)+x.charAt(y+2);if(n==1){y=parseInt(x)-1;if(y=="0") pp=false};if(n==2){y=parseInt(x)+1;if(y=="'+max+'") pp=false};if(pp){document.getElementById("tit").innerHTML=title[y];x=(y<10)?("0"+y):y;document.getElementById("imm").src="Immagini_gif/"+x+".gif";}}</scr');
    nWindow.document.write('ipt><p align=center><font face=Arial><span id="tit">'+titoli[numero]+'</span></font></p><center>[img]Immagini_gif/'+imm+'[/img]
    </center><center><table border="0" width="90%"><tr><td width="20%" align="center" style="cursor:hand" onClick="va(1)">Prec</td><td width="30%" align="center">[img]Immagini_gifclose.gif[/img]</td><td width="20%" align="center" style="cursor:hand" onClick="va(2)">Succ</td></tr></table></center>');
    } 
    
    </script>
    I richiami:
    onclick="index('01')"
    onclick="index('02')"


    poi dammi l'indirizzo del tuo sito che voglio vedere il risultato
    ciao
    Only the good die young
    all the evil seem to live forever

    :metallica

  7. #7
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    236

    problema codice

    <script>
    var imm=new Array();
    imm[0]="Image0.jpg";
    imm[1]="Image1.jpg";

    function index(numero){
    var nWindow;
    nWindow=window.open("void.htm","","width=300,heigh t=400");
    nWindow.document.write('[img]+imm[numero]+[/img]');
    }
    </script>


    questo codice non va!! Mi da errore nella visualizzazione della pagina...è come se non trovasse l'immagine [numero]

  8. #8
    Utente di HTML.it L'avatar di v2v2
    Registrato dal
    Sep 2002
    Messaggi
    221

    Re: problema codice

    Originariamente inviato da FedeF79
    questo codice non va!! Mi da errore nella visualizzazione della pagina...è come se non trovasse l'immagine [numero]
    questo codice non è più necessario

    Utilizza quello che ti ho postato prima cosi:
    codice:
    <html> 
    <head> 
    <script>
    var max=2;	//numero di titoli
    var titoli=new Array();
    
    // inserisci qui tutti i titoli
    titoli[1]="titol01";
    titoli[2]="titol02";
    
    var imm="";
    max=max+1;
    function index(numero){ 
    var nWindow;
    imm=numero+".gif";
    if (numero.charAt(0)==0)numero=numero.charAt(1);
    nWindow=window.open("void.htm","DETTAGLI","width=500,height=500");
    nWindow.document.write('<');
    nWindow.document.write('script>self.focus();var title=new Array();');
    for(i=1;i<max;i++){nWindow.document.write('title['+i+']="'+titoli[i]+'";')};
    nWindow.document.write('function va(n){var x="";var y=0;var pp=true;x=document.getElementById("imm").src;y=parseInt(x.lastIndexOf("/"));x=x.charAt(y+1)+x.charAt(y+2);if(n==1){y=parseInt(x)-1;if(y=="0") pp=false};if(n==2){y=parseInt(x)+1;if(y=="'+max+'") pp=false};if(pp){document.getElementById("tit").innerHTML=title[y];x=(y<10)?("0"+y):y;document.getElementById("imm").src="Immagini_gif/"+x+".gif";}}</scr');
    nWindow.document.write('ipt><p align=center><font face=Arial><span id="tit">'+titoli[numero]+'</span></font></p><center>[img]Immagini_gif/'+imm+'[/img]
    </center><center><table border="0" width="90%"><tr><td width="20%" align="center" style="cursor:hand" onClick="va(1)">Prec</td><td width="30%" align="center">[img]Immagini_gifclose.gif[/img]</td><td width="20%" align="center" style="cursor:hand" onClick="va(2)">Succ</td></tr></table></center>');
    } 
    
    </script> 
    </head> 
    <body> 
    
    ...
    
    
    </body> 
    </html>
    E chiama le immagini 01.gif 02.gif e così via
    Only the good die young
    all the evil seem to live forever

    :metallica

  9. #9
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    236
    mi serve di farlo con il vettore della immagini perchè i bottoni NEXT BACK

  10. #10
    Utente di HTML.it
    Registrato dal
    Jun 2003
    Messaggi
    236

    continua messaggio precedente

    ...i bottoni next e back utilizzano funzioni che fanno uso di una array che deve contenere tutte le mie immagini
    Mi aiuti a risolvere il problema del VETTORE?

    FACCIO COSì MA NON VA:
    var immagine=New Array(13);
    immagine[0] = "Immagini_gif/Image1.gif";
    immagine[1] = "Immagini_gif/Image2.gif";
    ...........................

    function incrocio(numero,titolo) {
    ......
    newWindow.document.write('<p align=center><font size=2 face=Arial>'+titolo+'</font></p><center>[img]'+immagine[numero]+'[/img]
    ');
    ......

    FORSE NON PRENDE L'IMMAGINE?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.