Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    Problema con div a comparsa

    sto cercando di ottenere che quando mi si carica la pagina mi compare un testo.
    questo è lo script:
    codice:
    function addText() {
        var newDiv = document.createElement("div");
        newDiv.setAttribute("id", "newDiv");
        var bodyTags = document.getElementsByTagName("body");
        var thisBody = bodyTags[0];
        thisBody.appendChild(newDiv);
        var textNode = document.createTextNode("marzia photographer");
        newDiv.appendChild("textNode");
        the_timeout = setTimeout("addText();", 2000);
    }
    in body ho messo questo:
    <body onload="addText();">

    ovviamente nn compare nulla.

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    textNode e' una variabile, togli gli apici
    newDiv.appendChild(textNode);

  3. #3
    giusto nn ci ho pensato.
    però nn funge lo stesso.
    in apertura di pagina nn si carica nulla.....

  4. #4
    anzi scusa adesso si carica, solo che si carica in continuazione ogni due secondi.
    io invece vorrei che si caricasse un volta e ci mettesse due secondi ad arrivare piano piano.

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    l' hai scritto tu di aggiungerne in continuazione
    the_timeout = setTimeout("addText();", 2000);
    che, poi, con lo stesso id... ma lasciamo perdere

    che vuol dire nel caso specifico piano piano?
    parliamo di sfumare?
    se e' un test e finisce qui vale la pena,
    se la cosa e' piu' complessa e da quanto ho capito non mi sembra tu sia in grado di scriverlo da zero, ti consiglio di spendere un minimo di tempo nell' apprendimento di jquery, che ha gia' tutti gli strumenti per manipolare il DOM, fare animazioni etc...

    ciao

  6. #6
    anche se c'è modo e modo per dire le cose, perchè nessuno nasce imparato e già mi sto facendo un bel mazzo, hai ragione.
    sono andato sul sito visualjquery e ho visto alcune cose che potrebbero andare.
    sto cominciando con un semplice esempio:
    Codice PHP:
    <body>
            <
    div id="ddtopmenubar" class="mattblackmenu"// nn posto tutto il codice del meni
    .....
            


            <
    div id="clickme">
                
    Click here
            
    </div>
            <
    div id="testo">
                <
    script>
                    $(
    document.body).click(function () {
                        if ($(
    "#testo").is(":hidden")) {
                            $(
    "div").slideDown("slow");
                        } else {
                            $(
    "div").hide();
                        }
                    });
                
    </script>
                marzia
            </div>
        </body>
    </html> 
    funziona male.
    nel senso che quando clicco sulla scritta sparisce tutto invece di far comparire il div testo.
    nel css testo l'ho messo come hidden (ed infatti nn compare quando carico la pagina).
    dovrebbe comparire al click.

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    infatti non voleva in nessun modo essere un appunto offensivo

    - :hidden in jquery e' un elemento che non occupa spazio, per dimensioni o display
    quindi nel css puoi settarlo a display:none;

    - "div" non e' il selettore che ti serve, sembrerebbe sia ancora "#testo"

  8. #8
    cha ca**ata di errore!!
    grazie per la dritta!
    cmq l'ho messo così:
    codice:
            <script type="text/javascript">
                $(document.body).ready(function () {
                    if ($("#testo").is(":hidden")) {
                        $("#testo").slideDown(2000);
                    }
                });
            </script>
    per avviarlo in fase di caricamento del body.
    funziona bene ma vorrei sapere altre due cose:
    1) il metodo che sto usando va bene o ce ne sono altri megliori?
    2) da quando ho messo margin-top: 20px; al div testo l'animazione è un pò scattosa.
    suppongo derivi dal fatto che mentre l'animazione viene esguita lui lo sposta sotto seguendo la direttiva del css, e avvenendo tutto insieme va a scatti (o almeno credo).
    si in qualche modo eliminare questo comportamento?

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.