Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    107

    Pagina sovrapposta ad un altra

    Salve,

    la mia idea era quella di creare una pagina contenente l'iscrizione alla newsletter che si attiva pochi secondi dopo l'apertura di un determinato URL (praticamente si va a soprapporre sopra la pagina aperta e rimane in evidenza)

    Come si fa per creare un effetto simile?

  2. #2
    Crea un div appena dopo il tag body:
    Codice PHP:
    <div id="win">contenuto finestra sovrapposta</div
    E setta questo stile:
    Codice PHP:
    #win
    {
        
    position:fixed;
        
    left0/* coordinata sinistra */
        
    top0/* coordinata destra  */
        
    width100px/* larghezza */
        
    height100px/* altezza */
        
    displaynone;

    Fatto questo ti serve una funzione js per settare il tempo nella quale apparira la finestra (5 sec.):
    Codice PHP:
    <body onload="var t = setTimeout(\"document.getElementById('win').style.display = 'block';\",5000);"

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    107
    grazie mille..


    domani provo


    c'e una funzione che mi legge il fatto che l'utente chiude la finestra?

    si poteva fare anche che se l'utente chiude si apre una striscia a piè di pagina contente qualcosa riguardante la newsletter

    concettualmente sarebbe:

    apertura finestra iscrizione newsletter
    if (utente compila e si iscrive)
    indirizzarlo verso la pagina di ringraziamento
    else // utente chiude cliccando sulla "x" della finestra della newsletter (in primo piano)
    aprire una finestra a piè di pagina contente una piccola memo per l'iscrizione alla newsletter

  4. #4
    Si ok tutto è possibile ma devi gestirlo a diversi livelli.
    Innanzitutto per l'evento di uscita sei tu a crearlo e di conseguenza a gestirlo:
    Codice PHP:
    <div onclick="document.getElementById('win').style.display = 'none';">CHIUDI FINESTRA</div
    Per quanto riguarda l'iscrizione devi lavorare di AJAX, linguaggio server (php per esempio) e MySQL. I presupposti sono che tu gestisca l'iscrizione delle newsletter tramite database.

    Idealmente dovresti fare una cosa del genere: quando carica la pagina attraverso una query MySQL controlli se l'utente è già iscritto alla newsletter e salvi l'esito in una variabile di sessione, se l'utente non è iscritto mostri la finestra d'iscrizione come ti ho mostrato nel post precedente. Se l'utente decide di iscriversi si inoltra tramite AJAX l'iscrizione e si cambia il valore della variabile di sessione legata alla registrazione chiudendo la finestra. Quando la finestra si chiude controlli la variabile di sessione, se è stato l'utente a chiudere la finestra senza iscriversi la variabile è rimasta con esito falso e quindi mostri la striscia a piè di pagina, se invece l'utente s'è iscritto e la finestra si è chiusa in automatico la variabile ha esito vero e non mostri nulla. Se l'utente era già iscritto il valore della variabile sarà vero fin dall'inizio quindi non mostri nulla ugualmente.

    Questa è l'idea. Per alleggerire il lato server puoi anche usare i cookie al posto della variabile di sessione ed ovviamente ricorrere all'interrogazione del lato server solo in caso il cookie sia stato cancellato o sia scaduto procedendo con la creazione del nuovo cookie.

    Il codice per fare questo non è difficile nel complesso ma diciamo che non è neanche da principianti. Come ti ho scritto sopra AJAX (quindi JS), PHP (o ASP,ASPX...) e MYSQL secondo me sono indispensabili. Buon lavoro

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    107
    ok facciamo un riepilogo:

    creo il codice della finestra e lo inserisco in div a cui associo una classe ("win")

    aggiungo questo
    <body onload="var t = setTimeout(\"document.getElementById('win').style. display = 'block';\",5000);">

    poi creo un div con l'attributo Onclick in modo tale da dirgli che nel momento in cui la classe "win" non viene più visualizzata deve fare qualcosa (e il qualcosa sarà o toglierla definitivamente o far apparire un sotto menu in trasparenza nel fondo della pagina)

    per quanto riguarda la parte di lettura database lo faccio con PHP che è abbastanza semplice anche se credo di non farla: la faccio apparire solo nell'home page quando qualsiasi persona entra..così mi tolgo il problema...tanto cliccare su una "x" non crea molto problema al visitatore

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    107
    Il codice che mi hai postato non funziona...

    per capirci meglio io volevo fare una cosa tipo questa: http://forum.html.it/forum/showthread/t-724494.html

    c'e la pubblicità (nel mio caso ci sarà il form di adesione alla newsletter) al centro della pagina, solo che quando clicco chiudi, al posto che cancellare la pagina si creare un qualcosa in fondo alla pagina in primo piano..

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.