Salve a tutti, proverò a descrivere il mio problema in maniera semplice.
Ho scritto un piccolo codice HTML+js e l'ho provato su tutti i browser ottenendo 2 risultati:
Opera, Firefox e Chrome vanno come una scheggia mentre safari e IE11 non caricano certi script.
Questo è il mio script di prova per farvi capire il problema:
<!DOCTYPE html>
<html>
<head>
<!-- Standard Meta -->
<meta charset="utf-8" />
<script type="text/javascript" src="archivio.js"></script>
<script type="text/javascript" src="prova.js"></script>
</head>
<body >
<button onclick="prova()">Prova</button>
<p id="riferimento">risultato</p>
</body>
</html>
testo semplice e pulito
in archivio c'è una funzione :
function casuale(a, b)
{
c = parseInt(Math.random() * (a) - b);
return c;
}
e in prova 1 altra:
function prova()
{
tipo = casuale(100,0);
document.getElementById("riferimento").innerHTML = tipo;
}
tutto molto semplice, se la provo funziona solo sui tre pre citati gli altri due non leggono lo script archivio e quindi per loro la funzione casuale() non esiste.
Se invece scrivo:
<!DOCTYPE html>
<html>
<head>
<!-- Standard Meta -->
<meta charset="utf-8" />
<script >
function casuale(a, b) {
/* se volessi un intervallo da 0 a x b è sempre = 0 , se volessi un intervallo da -x a +x la formula è b=|x|+1 a=b*2 */
c = parseInt(Math.random() * (a) - b);
return c;
}
</script>
<script type="text/javascript" src="prova.js"></script>
</head>
<body >
<button onclick="prova()">Prova</button>
<p id="riferimento">risultato</p>
</body>
</html>
ovvero il contenuto di archivio.js, allora funziona su tutti i browser! Qualcuno può spiegarmi il perchè e cosa dovrei scrivere per caricare la funzione esternamente in modo da farlo leggere a tutti i browser? Sono disperato e santo google non mi aiuta.
Eventualmente mi piacerebbe anche solo capire come richiamare uno script javascript da un altro script javascript .