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

    codice inserito in tag <script> non si esegue

    buongiorno a tutti.

    il mio problema è questo:

    ho una pagina html in cui sto inserendo uno script js nell'apposito tag <script>.

    sto utilizzando la libreria d3.js.

    quando apro la pagina con chrome, il codice non ha alcun effetto, anche se la console di chrome non segnala alcun errore. sembra quasi che non veda proprio il contenuto del tag.

    invece ho copiato e incollato il codice nella console e ha funzionato normalmente.

    com'è possibile??

    la libreria è importata correttamente, il tag <script> è nel body, il codice js non contiene errori... ma niente!

    sapete aiutarmi?

  2. #2
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    magari se posti il link alla pagina possiamo fare qualcosa. non abbiamo la sfera di cristallo
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  3. #3
    Molto probabilmente il tuo script si trova nell'head del documento e non attende il caricamento della pagina, di conseguenza non "trova" gli elementi su cui compiere le sue azioni.
    Prova a racchiudere il codice all'interno della funzione onload.

    codice:
    <script type="text/javascript">
    window.onload=function(){
        // qui il tuo codice
    }
    </script>

  4. #4
    <html>
    <head>
    <link href="stile.css" rel="stylesheet" type="text/css">
    <script src="//d3js.org/d3.v4.min.js"></script>
    </head>
    <body>
    <script>
    d3.select("#prova")
    .append("svg")
    .attr("width", 100)
    .attr("height", 100);
    </script>
    <div id="prova">
    </div>
    </body>
    </html>


    il codice, molto banale, è questo. apro la pagina con chrome e non succede niente. quindi dal developer tools, apro la console, copio e incollo lo stesso e identico codice, e l'svg si aggiunge correttamente. come vedete lo script è nel body. nella console non vengono visualizzati errori. e il codice è per forza di cose corretto, altrimenti non funzionerebbe nemmeno da console.

    che ne pensate?

  5. #5
    ps (o.t.): chiedo scusa per il codice non indentato, come faccio a formattare correttamente il codice quando posto?

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    A) Se richiami un oggetto non ancora presente non può funzionare (come indicava Luca) racchiudi il codice nel ready jquery
    B) Sicuro che sia presente la libreria jquery? (Nel codice non la vedo)
    C) Usa i tag [c o d e] .... codice js .... [/c o d e] (senza spazi)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  7. #7
    Quote Originariamente inviata da cavicchiandrea Visualizza il messaggio
    A) Se richiami un oggetto non ancora presente non può funzionare (come indicava Luca) racchiudi il codice nel ready jquery
    B) Sicuro che sia presente la libreria jquery? (Nel codice non la vedo)
    C) Usa i tag [c o d e] .... codice js .... [/c o d e] (senza spazi)
    ti rispondo per punti:

    A) infatti, ho risolto inserendo il tag <script> come ultimo figlio del body e adesso funziona.

    B) hai letto male, la libreria è d3.js, non jquery

    C) grazie mille!


    grazie a tutti per le risposte, problema risolto.

    buona giornata!

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.