2016-04-25 65 views
1

給定一個典型的腳本標籤:Javascript:是否可以讀取外部腳本的原始代碼?

<script src="foo.com/myscript.js"></script> 

,纔有可能直接讀取的myscript.js內容作爲一個字符串或東西嗎?
例如:

<script id="myscript" src="foo.com/myscript.js"></script> 
<script> 
    var inners = document.getElementById("myscript").//raw contents of myscript.js 
</script> 

回答

2

號您可以閱讀內嵌腳本標籤的內容,因爲它實際上確實有內容:

<script id="myscript"> 
    var inners = document.getElementById("myscript").textContent; 
</script> 

但對於外部JS,腳本內容不實際上放入了DOM;你需要使用AJAX重新獲取它(除非採取反高速緩存措施,否則它通常會被緩存),所以你不會花太多時間重新獲取它。

+0

這個問題並沒有要求閱讀腳本* element *的內容,它要求讀取'myscript.js'的內容,所以從你說的實際上你可以*通過獲取內容通過id引用元素,使用它獲取src屬性,然後執行Ajax請求以將該資源作爲字符串? (或者直接指定用於Ajax的腳本url,如果知道的話)。 – nnnnnn

+0

@nnnnnn:我知道它在問什麼;我已經回答了。是的,從腳本中獲取'src'然後發出AJAX請求基本上是您可以爲外部腳本執行的最佳選擇。 – Amadan

相關問題