javascript ファイルへの参照があるとします。
<script type="text/javascript" src="http://blah.com/js/count.js"></script>
count.js の内容:
alert("This script is loading from:" + url);
count.js の内部から、url 変数に入る値を特定するにはどうすればよいですか?
javascript ファイルへの参照があるとします。
<script type="text/javascript" src="http://blah.com/js/count.js"></script>
count.js の内容:
alert("This script is loading from:" + url);
count.js の内部から、url 変数に入る値を特定するにはどうすればよいですか?
外部スクリプトが実行されている場合、そのSCRIPT要素はページの最後の要素であるdocument.scripts[document.scripts.length-1].
したがって、SCRIPT要素が次の場合:
<script type="text/javascript" src="http://blah.com/js/count.js"></script>
count.jsファイルの内容は次のとおりです。
alert("This script is loading from:" + document.scripts[document.scripts.length-1].src);
次のように表示されます。
This script is loading from: http://blah.com/js/count.js
HTML5 では要素のasync属性が導入されているSCRIPTため、上記の方法はおそらく役に立たないことに注意してください。非同期の場合、関連付けられたSCRIPT要素を取得する唯一の方法は Gecko (Firefox) を使用することdocument.currentScriptですが、これは非標準であり、他のすべての Web ブラウザー エンジンでは実装されていません。例: Trident (MSIE)、WebKit (Chrome/Safari)、Presto (Opera)。