2011-06-22 15 views
6

これは可能ですか?xhrなしでインクルードされたjsファイルの内容を取得するには?

<html> 
    <script src="local.js> 
    <script> 
    // get contents of local.js file here without doing an ajax call? 
    </script> 
</html> 

local.jsは、同じサーバー上に存在する、と私はXHR呼び出しを行うことで、私はその内容を得ることができることを知っている(場合ないファイルに対して://)。

しかし、すでにブラウザで同期が要求されているため、その内容はドキュメントに認識されていますので、アクセスする方法があることを願っていますか? document.scriptsコレクションは私には役に立たなかった。

innerHTML(ページ内で定義されたスクリプトでうまくいきます)を取得するのと似ていますか?

+0

達成しようとしていることを説明できますか? – Peeter

答えて

1

私は含まれているJavaScriptコードを取得する方法や、なぜこれが必要なのかは分かりませんが、他の方向に進む方法はありますか?

スクリプトタグを使用する代わりに、ファイルへのXHR呼び出しを行い、その内容を評価して+その内容も変数として保持します。

**免責事項:これが必要な理由はわかりませんが、実際にこの方法を使用することはお勧めできませんが、回避策です。

-1

は、私は、スクリプトの内容がブラウザすることが知られているが、それらは文書に知られていないと思われるので、DOM APIを経由してアクセスすることはできません。したがって、XHRのアプローチを使用する必要があります。ちょっと運が良ければ、スクリプトが適切にキャッシュされていることを確認すれば、XHRリクエストはスクリプトの内容をローカルキャッシュから引き出します。

1

XHRがキャッシュされたバージョンを使用しないと仮定していますか?それは要求があるかもしれませんが、速い(同じHTTP接続を再利用してください)、304(変更されていない)を返します。したがって、キャッシュされたバージョンは、JavaScriptファイルのHTTPレスポンスヘッダーがキャッシングディレクティブを禁止または指定しない限り使用されます(通常はそうする必要があります)。

関連する問題