<script type="text/javascript">
// ここで自分自身( script オブジェクト ) を取得する方法なんですが・・・
</script>
script タグは複数&外部参照もあるので、id を設定して getElementById() で検索とかはナシの方向でひとつ。
こちらで、いかがでしょうか?
どのSCRIPTタグかを知る為に、便宜上idを付加していますが、
決してidで見つけ出してはいません。
アラートが表示した時の、scTags[i]が、ご希望のSCRIPTタグのオブジェクトです。
<html>
<body>
テスト
<input type="button" value="ok" onclick="hoge2();">
</body>
</html>
<script type="text/JavaScript" id="script_tag1">
<!--
function hoge1(){
}
//-->
</script>
<script type="text/JavaScript" id="script_tag2">
<!--
function hoge2(){
// 当該ファンクションを取得
var s1 = arguments.callee.toString();
// 20文字程度抜き出す
s1 = s1.substring(0,20);
// すべてのscriptタグをループして調べる
var scTags = document.getElementsByTagName("script") ;
for (var i = 0; i < scTags.length ; i++){
var s2 = scTags[i].text;
var pos = s2.indexOf(s1);
if( pos != -1 ){
alert("現在実行中のscriptタグは、["+ scTags[i].id + "]です。");
break;
}
}
}
//-->
</script>
なるほど!
すごいですね。関数の文字列をキーにしてscriptを検索するとは・・・
脱帽です。ありがとうございました!