Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2006
    Messaggi
    30

    Problema visibilità script (body/head)

    Ciao, il seguente codice funziona solo se metto lo script nel body,dopo il form:

    -----------------------------------------------------------------------------------

    <body>

    <div id="primo">
    CONTENUTO MODIFICABILE
    </div>

    <form name="f1">
    <input name="b1" type="button" value="premi qui" />
    </form>

    <script language="javascript">
    var p;

    function alarm()
    { alert('alarm'); }

    document.f1.b1.onclick=alarm;

    </script>

    </body>
    </html>

    -----------------------------------------------------------------------



    se lo metto nell'head, nn va.

    -----------------------------------------------------------------------

    <head>

    <style>
    #primo
    { background-color:#00FF00;
    border:1px solid black;
    }
    </style>

    <script language="javascript">
    var p;

    function alarm()
    { alert('alarm'); }

    document.f1.b1.onclick=alarm;

    </script>

    </head>

    <body>

    <div id="primo">
    CONTENUTO MODIFICABILE
    </div>

    <form name="f1">
    <input name="b1" type="button" value="premi qui" />
    </form>

    </body>
    </html>



    --------------------------------------------------------------------------------




    Perchè ? Come posso sistemarlo?
    E' molto importante,grazie!
    The Web Designer

  2. #2
    il tuo script cerca di settare una funzione all'onclick sul button, se il tuo script è nell'head non può funzionare, perchè quando il browser raggiunge la riga:
    document.f1.b1.onclick=alarm;
    non sa ancora cosa sia f1, quindi l'istruzione non fa nulla.
    Mentre se lo metti nel body, dopo il form, funziona, perchè il browser,sa già cosa è f1.
    Se metti lo script subito dopo l'apertura del tag body,e prima del form, vedrai che non funziona, per lo stesso motivo dell'head.

    quindi tu dovresti mettere la funzione alarm nell'head e associare all'onload della pagina l'associazione dell'evento onclick del button con la funzione. Cosi:
    codice:
    <head>
    <script language="javascript">
    var p;
    function alarm()
    { alert('alarm'); }
    </script>
    <body onload="document.f1.b1.onclick=alarm;">
     <form name="f1">
    <input name="b1" type="button" value="premi qui" />
    </form>
    </body>

  3. #3

    ....

    O meglio.
    Codice PHP:
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd"
    >
    <
    html>
    <
    head>
    <
    title>Untitled Document</title>
    <
    meta http-equiv="Content-Type" content="text/html; charset=utf-8">
     <
    style>
    #primo { 
        
    background-color:#00FF00;
        
    border:1px solid black;

    }
    </
    style>
    <
    script language="javascript">
    function 
    alarm()

        
    alert('alarm'); 
    }
    // QUI PRIMA CHE LA PAGINA SIA CARICATA document.f1.b1 NON E' DEFINITO
    //alert(document.f1.b1);
    window.onload = function()
    {
    document.f1.b1.onclick=alarm;
    }
     
    </script>
    </head>

    <body>
    <body>

    <div id="primo">
    CONTENUTO MODIFICABILE
    </div>

    <form name="f1">
    <input name="b1" type="button" value="premi qui" />
    </form>
    </body>
    </html>
    </body>
    </html> 

    Without faith, nothing is possible. With it, nothing is impossible
    http://ilwebdifabio.it

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.