Visualizzazione dei risultati da 1 a 6 su 6

Discussione: richiamare uno script

  1. #1
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    270

    richiamare uno script

    ciao,
    ho una pagina php e in fondo a questra pagina un modulo <script></script> in cui sono presenti delle funzioni javascript.
    ora per rendere la cosa un po piu ordinata ho deciso di spostare le funzioni javascript in un file .js in un altra cartella del progetto mettendo nell'<head> della pagina php <script type="text/javascript" src="../path/file.js"></script> ma adesso i link della pagina che richiamano funzioni javascript non funzionano piu.

    perche??

    (ho provato ad usare firebug ma nn mi da nessun errore nonostante nn funzioni piu nulla)

    grazie mille

  2. #2
    ma lo script lo hai importato nel head? se si, prova a metterlo nel punto dove erano prima le funzioni
    I DON'T Double Click!

  3. #3
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    270
    no allora lo script l'ho messo in un file a parte .js in un'altra cartella del progetto.
    dopo di che ho aggiunto <script type="text/javascript" src="../include/panelEsecuzione.js"></script> nell'head per idicargli il riferimento quidn i ora nn c'è piu codice javascript nella pagina php

  4. #4
    quello che intendevo è: prova a mettere <script type="text/javascript" src="../include/panelEsecuzione.js"></script> nel punto dove si trovavano prima le funzioni. Il fatto che fossero in fondo alla pagina mi fa pensare che avessero delle istruzioni fuori dalle function e che senza lanciare quelle non funzionino.
    I DON'T Double Click!

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2008
    Messaggi
    270
    ok sembra funzionare

    pero mi puoi spiegare a cosa è dovuto questo "inconveniente"???

    (perche se leggi ovunque si raccomandano tutti di inserire i riferimenti degli script nell'head della pagina)

  6. #6
    veramente usare <script> per includere del js è identico a scrivere il js direttamente nel tag.

    Ti faccio un esempio di cosa poteva succedere:

    codice:
    <div id="MyDiv">
    Ciao
    </div>
    <script type="text/javascript">
    alert(document.getElementById('MyDiv').innerHTML);
    </script>
    Questo codice causa l'alert di "Ciao"

    Ma se lo metti nella head della pagina, ti ritornerà un errore sulla console bloccando il JS, perché nel momento in cui l'istruzione viene eseguito il browser non ha ancora interpretato la presenza del div che viene chiamato e per JS non esiste.

    Personalmente io sconsiglio sempre di usare questo tipo di soluzioni, dato che, come nel tuo caso, sono assai poco portabili, visto che dipendono dalla loro posizione nel codice, il metodo migliore sarebbe lanciare tutte le istruzioni fuori dalle funzioni nell'evento onload della pagina (o nel dom ready, se non ci interessa l'altezza dovuta ad immagini, o media varii):

    <script type="text/javascript">
    window.onload = function(){
    alert(document.getElementById('MyDiv').innerHTML);
    }
    </script>

    In questo modo lo script può essere messo in ogni posizione della pagina che verrà sempre eseguito correttamente.
    I DON'T Double Click!

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.