Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253

    Sovrapposizione immagini js e css

    ciao ragazzi!
    vi chiedo un help!
    Ho fatto in js e css, due funzioni, che permettono di mostrare l'immagine piu' grande, al passaggio del mouse sopra l'immagine piu' piccola, il problema è che quando passo su un'immagine piccola, ok si sovrappone l'altra piu' grande, solo che quando esco dal riquadro dell'immagine a volte si toglie altre no...non capisco il motivo...vi posto il codice!
    Purtroppo per ora nn riesco ad uplodare la pagina..

    ecco la pagina html


    codice:
    <div>
     [img]img/imgmicro/micro1.jpg[/img]
    <p class="titoloportfolio">descrizione2</p>
    [img]img/imgmedie/media1.jpg[/img]
     </div>
    ...
    ecco le due funzioni js
    [CODE]
    function dlMostraDiv(name)
    {
    var ctrl = document.getElementById(name);
    ctrl.style.display = '';
    ctrl.style.visibility = 'visible';
    }

    function dlNascondiDiv(name)
    {
    var ctrl = document.getElementById(name);
    ctrl.style.display = 'none';
    ctrl.style.visibility = 'hidden';

    }

    CODE]
    ecco il foglio di stile inerente all'immagine grande
    codice:
    IMG.micro1big
    {
        position: absolute;
        top: 3em;    
        left:8em;
        z-index : 20;
        border: 0px;
        cursor: pointer;
        visibility: hidden;
    }
    grazie amici per l'aiuto!

  2. #2
    Ciao,
    mi sembra tutto corretto.

    Forse puoi migliorare la situazione lavorando su un solo tag img:
    [img]img/imgmicro/micro1.jpg[/img]

    function loadBig(elem){
    elem.src="PATH_PER_iMMAGINE_GRANDE";
    }

    function loadSmall(elem){
    elem.src="PATH_PER_iMMAGINE_PICCOLA";
    }

    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    ciao Mirko,
    Buon Lunedì a tutti!
    grazie mille per la risposta, ho provato la tua soluzione, però mi è venuto in mente di fare una cosa di questo genere, purtroppo funziona solo in parte, magari con un aiuto da parte vostra riesco a farla andare...!
    questa è la pagina delle immagini
    codice:
    <head>
        <title>Pagina senza titolo</title>
    <script type="text/javascript" language="javascript" src="sys/lib.js"></script>
    
    
    <style>
    .big
    {
      position:relative;
        border: 3px solid #1B832C;
        cursor: pointer;
        visibility: hidden;
        z-index : 20;
        float:left;
    }
    
    #riquadro 
    {
    
    	color: #1B832C;
    	border-left: solid 1px black;
    	border-right: solid 1px black;
    	vertical-align: top;
    }
    #contenitore 
    {
        text-align: center;
        padding-right:1em;
    	padding-top: 2em;
    	padding-left: 1em;
    	color: #000;
    	overflow:hidden;
    }
    #contenitore div 
    {
      
       text-align: center;
       width: 280px;
       float: left;
     }
    </style>
    </head>
    <body>
      <div class="">                    
        <div id="contenitore">
                        
                           <div id="div1">
                            [img]img/imgmicro/micro1bianco.jpg[/img]
                            <p class="titoloportfolio">iMG1</p>
                          </div>
                          
                          <div id="div2">
                            [img]img/imgmicro/bussolabianca.jpg[/img]
                            <p class="titoloportfolio">IMG2</p>
                           </div>
                          
                        <div id="div3">
                        [img]img/imgmicro/micro3.jpg[/img]
                        <p class="titoloportfolio">IMG3</p>
                        </div>                      
         </div>            
       </div>                    
                          
                          PROVA TESTO PROVA TESTO PROVA TESTO
                          
                          
                          
    [img]img/imgmedie/big1.jpg[/img]
    [img]img/imgmedie/big2.jpg[/img]
    [img]img/imgmedie/big3.jpg[/img]
    
    TESTO TESTO TESTO
    </body>
    </html>
    Ecco con il css che ho appena scritto impagino le foto, dopo ho fatto una function in js che si trova in lib.js, importata all'inizio, dove richiamo il nome di ogni div che contiene un immagine con il suo testo, in modo tale che se ridimensiono la finestra le img rimangono una sopra l'altra.

    codice:
    function dlMostraImgBig(nameSmall,nameBig)
    {
    
        
        var ctrlSmall= document.getElementById(nameSmall);
        var ctrlBig = document.getElementById(nameBig);
        
        var leftBig = new Number(ctrlSmall.style.left) + 0;
        var topBig = new Number(ctrlSmall.style.top) -300;
        
        ctrlBig.style.left = leftBig;
        ctrlBig.style.top = topBig;
        dlMostraDiv(nameBig);
    }
    //per nascondere l'immagine
    function dlNascondiDiv(name)
    {
        var ctrl = document.getElementById(name);
    	ctrl.style.display = 'none';
    	ctrl.style.visibility = 'hidden';
    	
    }
    Ho provato in explorer 7 e
    il problema è che quando si carica la pagina per la prima volta funziona, dopo di che, sballa tutto...purtroppo non riesco a mettere online la pagina..sto facendo vari tentativi ma niente da fare... confido in un vostro aiuto! Intanto io continuo a fare delle prove...
    Grazie mille amici!
    Un saluto.
    Ely

  4. #4
    Ciao,
    manca il codice del dlMostraDiv(nameBig),
    ma ho osservato che nella function dlNascondiDiv(name)
    oltre a non mostrare l'oggetto (display = 'none' ) lo rendi anche invisibile.

    Non è che nel mostradiv setti solo una delle 2 proprietà che modifichi nella dlNascondiDiv(name)?

    Ciao
    Mirko Agrati
    WEB : http://mirkoagrati.110mb.com
    RSS : http://feeds.feedburner.com/MirkoAgratiArticoli

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    ciao ragazzi,
    buona domenica a tutti!
    ritorno con il mio problema di sovrapposizione img... !
    In seguito al prezioso aiuto vostro e di Fcaldera, vorrei capire alcune cose...
    ecco il link!

    http://www.webalice.it/elisamito/prova/testimg.html

    La prima cosa che non capisco è che,se tolgo la funzione javascript scritta all'interno della pagina testimg, il tutto funziona in ogni caso...nn capisco perchè...
    Anche onmouseover sull'img per ingrandire, io l'avevo fatto con un js ma qui non è stato necessario? Avviene tutto tramite css?

    Poi ho provato a cambiare il valore di z-index per mostrare l'immagine grande sopra a quelle piccole ma non sono riuscita... potreste darmi una mano?

    Grazie mille per l'aiuto amici!

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da elisamito http://www.webalice.it/elisamito/prova/testimg.html

    La prima cosa che non capisco è che,se tolgo la funzione javascript scritta all'interno della pagina testimg, il tutto funziona in ogni caso...nn capisco perchè...
    Anche onmouseover sull'img per ingrandire, io l'avevo fatto con un js ma qui non è stato necessario? Avviene tutto tramite css?
    Ti ho dato un esempio di javascript non intrusivo.

    Senza javascript l'ingrandimento funziona grazie alla gestione della pseudoclasse hover nei link sulle immagini piccole. L'unico limite è che uscendo dal link l'ingrandimento si richiude.

    A questo punto javascript crea un livello di "enhancement" il cui scopo è solo quello di riuscire a mantenere l'ingrandimento aperto.
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Utente di HTML.it
    Registrato dal
    Oct 2004
    Messaggi
    253
    ciao Fabrizio!
    Ahh ho capito dunque se volessi reinserire la funzione che ho fatto io potrei...
    Ma invece per quanto riguarda le immagini grandi che si vedono sotto quelle piccole secondo te come si può risolvere?

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 © 2026 vBulletin Solutions, Inc. All rights reserved.