Ciao a tutti,
c'è modo di controllare se un funzione JavaScript esiste oppure no?
Del tipo: se miafunzione() esiste, allora esegui ...
Grazie a tutti coloro che vorranno spendere qualche istante della loro vita qui![]()
![]()
Ciao a tutti,
c'è modo di controllare se un funzione JavaScript esiste oppure no?
Del tipo: se miafunzione() esiste, allora esegui ...
Grazie a tutti coloro che vorranno spendere qualche istante della loro vita qui![]()
![]()
vorrei sbagliarmi, ma non credo sia possibile.
l'invocazione di una funzione non definita solleverebbe un errore di sintassi che, per quello che ne so, non è gestibile dal programmatore.
ciao
Forse si puo` fare.
Io proverei:
if(miafunzione) miafunzione();
oppure:
if(miafunzione != 'undefined') miafunzione(); // non so se ci vanno gli apici
infatti la funzione e` un oggetto della pagina, e come tale si puo` testarne l'esistenza.
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
così funziona con IE e Firefox
codice:if(self.miaFunzione) miaFunzione();
E' molto utile quando, da una finestra di popup si vuol dare un comando alla finestra chiamante
if(chiamante.miaFunzione) chiamante.miaFunzione();
dove chiamante può essere self od opener...
![]()
Pietro
Uffi nessuno dei modi che mi avete consigliato funge
Il mio problema sta nel fatto che devo richiamare da un altro sito una libreria JS, quindi dovrei fare in modo che la pagina richiami una determinata funzione solo quando la libreria è stata caricata!
Su Firefox non ci sono problemi perchè esegue le funzioni solo quando tutta la pagina è caricata...ma su ie ci sono problemi perchè cerca di eseguire le funzioni anche senza aspettare il caricamento, e quindi va tutto a monte!
Come fare?
ma come hai impostato la pagina?
Non dovrebbe succedere quello che descrivi. Le funzioni vengon caricate prima della pagina (se sono correttamente inserite in uno script della head)
Comunque puoi mettere una variabile che viene messa a true solo se il file esterno e` completo:
<script type="text/javascript">
var caricate=false;
</script>
<script type="text/javascript" src="....">&nbsp;</script>
//... lo script esterno finisce con:
caricate=true;
//...
<head>
<body ...>
...
<a ... onclick="if(caricate) miafunzione();">
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
Ottimometodo se non fosse che non ho accesso al file esterno che viene scaricato!Originariamente inviato da Mich_
Comunque puoi mettere una variabile che viene messa a true solo se il file esterno e` completo:
Possibile che non esiste altro modo??
Ciao a tutti,
Anche se con cirtca 5 anni di ritardo(!) ecco la risposta:
if (typeof nomeFunzione== 'function' ) {nomeFunzione()}
Spero che sia utile a qualcuno.
Ciao
Creative Chaos We(b) Design
www.creativechaos.it
E' servita a me, dopo altri 5 anni XD
Grazie![]()