javacript で自分自身が含まれている <script> オブジェクト を取得する方法ってありますか?



<script type="text/javascript">

// ここで自分自身( script オブジェクト ) を取得する方法なんですが・・・

</script>


script タグは複数&外部参照もあるので、id を設定して getElementById() で検索とかはナシの方向でひとつ。

回答の条件
  • 1人2回まで
  • 登録:2006/11/30 23:24:40
  • 終了:2006/12/01 12:39:41

回答(1件)

id:llusall No.1

llusall回答回数505ベストアンサー獲得回数612006/12/01 01:43:40

ポイント80pt

こちらで、いかがでしょうか?

どの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>

id:yoski

なるほど!

すごいですね。関数の文字列をキーにしてscriptを検索するとは・・・

脱帽です。ありがとうございました!

2006/12/01 12:34:59

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません