<script id="s1" src="foo.js"></script>
<script>
alert('foo.js contains' + _source_code_of('s1'))
</script>
È possibile implementare _source_code_of
?È possibile accedere al codice sorgente JavaScript di un elemento <script src = "">?
<script id="s1" src="foo.js"></script>
<script>
alert('foo.js contains' + _source_code_of('s1'))
</script>
È possibile implementare _source_code_of
?È possibile accedere al codice sorgente JavaScript di un elemento <script src = "">?
No, ciò consentirebbe di recuperare il contenuto di qualsiasi URL, che potrebbe rompere alcune politiche di sicurezza. (Questo sarebbe un equivalente di una richiesta get ajax senza controlli dello stesso dominio.)
Tuttavia, poiché foo.js
è nello stesso dominio della pagina, è possibile recuperarlo con una richiesta Ajax. Esempio con jQuery:
$.get('foo.js', function(source_code) {
alert('foo.js contains ' + source_code);
});
No, non direttamente per motivi di sicurezza fondamentali.
Il fatto che tu abbia taggato questo con Ajax implica che stai cercando di usarlo come un modo per recuperare i dati. In tal caso, l'approccio simile più vicino è JSONP, in cui lo script appena caricato richiama un metodo per trasferire nuovamente i dati al documento principale.
"Questo sarebbe un equivalente di una richiesta get ajax senza controlli dello stesso dominio." - Esattamente, questo è quello che speravo, in realtà :-) – Sixtease
Allora quello che ti serve è JSONP (vedi [@ leeep's answer] (http://stackoverflow.com/questions/4862955/can-javascript-access-source- codice-di-un-script-src-elemento/4863119 # 4863119)); ma il server deve supportarlo esplicitamente. – arnaud576875