Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1
    Utente di HTML.it L'avatar di coteaz
    Registrato dal
    Mar 2006
    Messaggi
    365

    [JS] DIV centrato, suggerimento

    Salve Rafazzi

    ho bisogno del vostro aiuto

    nel mio sito ho creato dei popup con messaggi di errore attraverso dei div che inizialmente sono disattivati ma che si attivano al momento.

    questi sono posizionati in maniera assoluta

    div.alert {
    width:300px;
    height:150px;
    position:absolute;
    top:248;
    left:250;
    }

    il mio problema è questo... se ho una pagina lunga che scrolla, vorrei far si che il div compaia sempre al centro della pagina... quindi dovrebbe avere una posizione dall'alto dinamica...

    spero di aver reso l'idea, qualcuno mi aiuta?

    grazie

  2. #2
    Utente di HTML.it L'avatar di coteaz
    Registrato dal
    Mar 2006
    Messaggi
    365
    nessuno mi aiuta?

  3. #3
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da coteaz
    nessuno mi aiuta?
    Come base da sviluppare:
    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    <style type="text/css">
    div#alert {
    	width:200px;
    	height:150px;
    	position:absolute;
    	visibility:hidden;
    	z-index: 100;
    	font-family: Verdana, Arial, Helvetica, sans-serif;
    	font-size: 12px;
    	color: #FF0000;
    	background-color: #FFFF55;
    	border-top: 2px solid #0000FF;
    	border-right: 2px solid #0000FF;
    	border-bottom: 1px solid #0000FF;
    	border-left: 1px solid #0000FF;
    }
    </style>
    <script type="text/javascript">
    <!-- //
    function verifica(){
    var altezza = document.documentElement.scrollHeight
    var latosx = Math.floor((screen.width-200)/2);
    var latosup=Math.floor((altezza-150)/2);
    if(document.getElementById("testo").value==""){
    document.getElementById("alert").style.top=latosup+"px";
    document.getElementById("alert").style.left=latosx+"px";
    document.getElementById("alert").style.visibility='visible';
    document.getElementById("alert").innerHTML="ATTENZIONE il campo testo e obbligatorio <a href=\"javascript:;\" onclick=\"document.getElementById('alert').style.visibility='hidden';\">chiudi</a>";
    return false;
    }
    }
    // -->
    </script>
    </head>
    <body><div id="alert"></div>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    
    
    </p>
    <form action="" method="post" name="f1" onsubmit="return verifica()"><center><input name="testo" type="text" id="testo" class="prova" />
      <input type="submit" name="Submit" value="Invia" />
    </center></form>
    </body>
    </html>
    buon lavoro
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  4. #4
    Utente di HTML.it L'avatar di coteaz
    Registrato dal
    Mar 2006
    Messaggi
    365
    salve

    ti ringrazio per il suggerimento

    però come sospettavo var altezza = document.documentElement.scrollHeight non funziona con explorer!!!

  5. #5
    Utente di HTML.it L'avatar di coteaz
    Registrato dal
    Mar 2006
    Messaggi
    365
    provo con un esempio a spiegare il mio problema

    il DIV deve essere sempre centrato nella pagina anche se io mi trovo a metà di essa o alla fine



    GRAZIE

  6. #6
    position fixed ... e sei a cavallo, peccato per il solito IE6 che non lo supporta
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #7
    Utente di HTML.it L'avatar di coteaz
    Registrato dal
    Mar 2006
    Messaggi
    365
    e che te lo dico a fare...

    explorer è la piaga del web!!!

  8. #8
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da coteaz
    e che te lo dico a fare...

    explorer è la piaga del web!!!

    Dopo diversi tentativi e prove modificando queste 2 righe:
    codice:
    var altezza = document.documentElement.scrollTop
    var latosup= altezza+150;
    rispetto allo esempio precedente si ottiene grosso modo quello mostrato nel disegno funzionante sia con IE che con FireFox.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  9. #9
    Originariamente inviato da cavicchiandrea
    Dopo diversi tentativi e prove modificando queste 2 righe:
    codice:
    var altezza = document.documentElement.scrollTop
    var latosup= altezza+150;
    rispetto allo esempio precedente si ottiene grosso modo quello mostrato nel disegno funzionante sia con IE che con FireFox.
    funziona ma se scrolli non funziona più

    position fixed per tutti tranne IE6 ed inferiori, dove serve inevitabilmente un setInterval (usando scrollTop) e dove l'effetto sarà bruttino ... ma tant'è

    P.S. ho un esempio da tempo in webreflection.blogspot.com , sotto il technorati ci sono 4 immagini di altri blogs, clicka una volta su una per vedere cosa accade poi fallo anche con IE6 ... che poi se non ricordo male anche il 7 non supporta bene il position fixed ...
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  10. #10
    Utente di HTML.it L'avatar di coteaz
    Registrato dal
    Mar 2006
    Messaggi
    365
    FUNZIONA grande!!!

    diciamo che chi ha IE6 si fotte

    ma visto che è un intranet per la mia azienda dirò che la versione è powered per FF e IE7

    grazie ragazzi siete sempe i migliori

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.