javascriptで

function test()
{
var aa = 2;
document.getElementById('bb').innerHTML = aa;
}
というfunctionを作成して、html側で
<script type="text/javascript">
test();
</script>
として実行した場合に、html側の
<div id="bb"></div>の下にこの
スクリプトタグを埋めないとダメです。

どうしたらHTML側の<HEAD>部分にこの
スクリプトタグを埋こんで実行されますか?

onloadなどで埋め込まないであくまで
<script type="text/javascript">
</script>
の中にfunctionを書いてそれが
反映さるようにならないとダメです。

以上、よろしくお願い致します。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2007/05/16 15:31:00
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

回答4件)

id:GEN111 No.1

回答回数472ベストアンサー獲得回数58

ポイント30pt

<script>の中なら onload 使っても OK ですか?

<html>
  <head>
    <script type="text/javascript">
      function test()
      {
        var aa = 2;
        document.getElementById('bb').innerHTML = aa;
      }

      window.onload = test ;
    </script>
  </head>

  <body>
    <div id="bb"></div>
  </body>
</html>
id:hopefully

ありがとうございます。

でもだめですね。すいません。

html内はfunction名だけ

指定する形がいいのです。

なのでonclickなども駄目です。

2007/05/15 20:11:18
id:GEN111 No.2

回答回数472ベストアンサー獲得回数58

ポイント30pt

しつこく onload ですみませんが、これではどうでしょうか。

<html>
  <head>
    <script type="text/javascript">
      function test()
      {
        window.onload = test ;

        var aa = 2 ;
        document.getElementById('bb').innerHTML = aa ;
      }
    </script>

    <script type="text/javascript">
      test() ;
    </script>
  </head>

  <body>
    <div id="bb"></div>
    <pre>

    </pre>
  </body>
</html>
id:hopefully

onloadは駄目ですね。

すいません。

2007/05/15 22:04:08
id:STRing No.3

回答回数351ベストアンサー獲得回数36

ポイント15pt

onload が頑なに除外されてしまう理由が判らないのでライブラリも駄目かも知れませんが以下に出ているライブラリをどちらか使うのは?

[ThinkIT] 第2回:jQueryライブラリの内部とonloadイベント記法 (2/2)


html の script には関数呼び出ししか記述しないとなると #2 のように包むことになりますが……

id:hopefully

そうですねw

ありがとうございます。

2007/05/16 15:13:48
id:jack_sonic No.4

回答回数124ベストアンサー獲得回数25

ポイント15pt

onloadを使わないで、正しいタイミングで

head内関数で内容を記述するために

必要なことと方法を書きました。

ジャックズラボinはてな - onloadを使わずにhead内記述で要素の内容を書くサンプル

id:hopefully

ありがとうございますw

2007/05/16 15:13:29
  • id:GEN111
    ダメですか、すみません。
    いずれにしろ、document.getElementById('bb').innerHTML = aa ; の実行を <div id="bb"></div> の評価より遅
    らせる必要があるわけで、window.onload がダメとなると後はこれくらいしか思いつきません。

    <html>
    <head>
    <script type="text/javascript">
    function test()
    {
    if (!document.getElementById('bb')) { setTimeout("test()", 10) ; return ; }

    var aa = 2 ;

    document.getElementById('bb').innerHTML = aa ;
    }
    </script>

    <script type="text/javascript">
    test() ;
    </script>
    </head>

    <body>
    <div id="bb"></div>
    </body>
    </html>

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

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

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

回答リクエストを送信したユーザーはいません