• ベストアンサー

window.onloadに関数を指定したいです。

window.onloadに関数を指定したいです。 以下のfoge関数をwindow.onloadに入れる場合は、どうすればいいのでしょうか? function test(){ this.foge = function(){ } } 以下のような感じで、fogeを指定したいのですが。 window.onload=function(){test()} function test(){ } どうすればいいのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • yyr446
  • ベストアンサー率65% (870/1330)
回答No.2

 window.onload=function(){   var fuga = new test();   fuga.foge();  }  function test(){   this.foge = function(){    }  } って意味ですか...

a-z_A-Z
質問者

お礼

ありがとうございます。 目的の動作が出来ました。

その他の回答 (1)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

test関数にfogeメソッドを追加するのですか? 意味がよくわからないので、どういう挙動を想定しているのか例示したほうが・・・

関連するQ&A

  • window.onLoad について

    <body> タグに、onload=関数名・・・ と記述するとなぜかオブジェクトがありませんとかで 実行されない時があるため、 <head>タグ内に <script type="text/javascript">  window.onLoad=function(){ 関数名} </script> と記述してみたところ、まったく関数が動作しなくなってしまいました。 ステータスには「ページが表示されました」とでていて、スクリプトエラーにもなっていないようです。 原因がわからず、それならば・・・ htmlを順番に表示していくのだから、htmlの最後のほうに記述すればいいのでは? と思い、 </body>の直前に <script type="text/javascript"> 関数名  ← onloadで動作させる関数 </script> と記述してみたところ、うまく表示できました。 この記述方法って正しいのでしょうか? 環境に依存するのか、毎回悩まされるし、毎回対処方法が違ったりしているので ホントに困っています。 アドバイスお願いします。 #何故 window.onLoad=function(){ 関数名 } ではまったく動かなかったのでしょう。。。

  • <body onload=""> と window.onload

    JavaScriptのonload処理についての質問です。 現在Java、JSP、JavaScript等でWebアプリケーションを作成しているのですが、 bodyタグ中のonloadに記載したファンクションが時々呼ばれないという問題が起きています。 (こんな感じで記述  <body onload="hoge();hogehoge();">  hogehoge()がたまに呼ばれないことがある・・・) これを回避する方法として、「onload処理をwindow.onloadに記述すれば良い」 という話を聞きました。 (こんな感じで記述  <script>    window.onload = function(){ hoge();hogehoge(); }  </script> ) 「bodyタグ中に記述するとたまに呼ばれないものが、window.onloadに記述すると確実に呼ばれる」 なんてことがあるのでしょうか? 「2つめのファンクションが呼ばれない」という現象がたまにしか発生しないので、 window.onloadに記述する方法で確実に呼ばれるようになったという保証がとれません。 知識として知っている方がいれば是非教えていただきたいです。 よろしくお願い致します。 ※ブラウザはIEを使用  バージョンは IE → 6.0      JavaScript → 1.1 です。  

  • window.onload = alertでエラー

    window.onload = alert('テスト');とやると、 テストと表示された後、 「実装されていません」というエラーになります。 window.onload = function(){  alert('テスト'); } とやればうまくいくのですが、 window.onload = alert('テスト');では、なぜダメなのでしょうか? また、表示された後、「実装されていません」というエラーが出ることについて、 中でどういう処理が走って、こういう結果になるのでしょうか?

  • window.onload=の関数呼出で()が不要

    window.onload=の関数呼び出しで()が不要なのはどうしてでしょうか? ・windowオブジェクトのonloadイベントハンドラだから? ・例えば、imageオブジェクトだったらどうなるでしょうか? hoge = new Image(); hogeに対して何か処理; hoge.onload = kansu; or hoge.onload = kansu(); http://www5e.biglobe.ne.jp/~purest/javascript/zakki/onload.html

  • onloadの実行待ち関数の使い方

    http://d.hatena.ne.jp/ynsyns/20090918/1253265108 ここのサンプルを試してみたいのですが、 使い方がよく分かりません。 addLoad(func);のfuncは何を指しているのでしょうか? また、書く順番はどうなるのでしょうか? ・window.onload = function() { ・window.onload = func() { ・function addLoad(func){ ・addLoad(func); でしょうか? それとも順番は関係ないのでしょうか?

  • window.onloadでのfunction

    javascript初心者で質問自身が僕が解決したい問題の原因かどうかも解らずに質問しています。 <script type="text/javascript"> <!-- function hoge_1() { ~処理1~ } function hoge_2(hiki_suu) { ~処理2~ } window.onload = function() { document.getElementById("button_1").onclock = hoge_1; document.getElementById("button_2").onclock = hoge_2("watasu"); } // --> </script> 上記のようにページheadにscriptを配置したとします。ページ上のbutton_1がクリックされると処理1が実行されるのですが、hoge_2のように引数を使ってしまうと、onload時に処理2を実行してしまい、button_2は有効に動作しません。 functionの引数の問題なのか、window.onloadの作法なのか、なにが悪いのか全く解らず質問しています。 ご指導のほどよろしくお願いいたします。

  • なぜ関数をfuncで呼び出すのか。なぜfunc()ではいけないのか。

    画像の読み込み完了をトリガーとして動作する以下のような関数があります。 var img = new Image(); window.onload = function() { img.onload = func; } function func() { (省略) } img.onloadによって、画像の読み込みが完了したときに動作する関数を指定していますが、なぜfuncと書き、func()ではいけないのでしょうか?実際に試してみましたが、()をつけると動作しませんでした。()をつけないで関数を呼び出す方法を知らなかったので(無名関数を使う場合でさえ、変数名()という形を取るのに)、この理由が分からなくて困っています。どなたか教えてください。

  • onloadの同一ページ内の干渉対策

    お世話になります。 CGIで呼び出した、任意の大きさの画像データを、一定のフレーム内に 収める為に、サイズ調整をする関数を、HTML内に以下のように置いたのですが、 やはり、onLoad同士が干渉し合う様で、特に最初のresize1関数によって表示されるはずの画像が表示されません。 設定したいフレームの大きさが4種類ほどあるのでどうしても複数設置になってしまいます。 自分なりに、幾つかのonloadの複数設置対策を試みたのですが、今のところ、有効な結果が出るに至っていません。 因みに、ブラウザの更新ボタンを押した後は、関数処理後の画像が表示されるので、関数自体には問題はないかと考えています。 解決策を持っていらっしゃる方がいれば、 是非、ご教授の程、よろしくお願致します。 <HEAD>内 function resize1() {} function resize2() {} function resize3() {} function resize4() {} <BODY>内 <img src="" onload="resize1(this)"> <img src="" onload="resize2(this)"> <img src="" onload="resize3(this)"> <img src="" onload="resize4(this)">

  • window.onload = cli;はなぜ括弧が必要ないのでしょうか?

    通常は、 function cli(){ ~; } をonclickで実行する場合、 onclick = cli(); で動作しますが、 window.onload = cli; ↑で実行する場合はなぜcliの括弧がなくても実行できるのでしょうか。 何か深い意味があるのでしょうか。 素朴な疑問ですが、よろしくお願い致します。

  • window.onloadが、ブラウザ(Firefox)で戻る場合に動作しない

    「Flash版地図API」の導入作業をしています。 地図内にマーカーを付けるために、以下のように記述しました。 <script language="JavaScript" type="text/javascript"> <!--常にマーク表示--> window.onload = function() { thisMovie('YFMap').addIcon('tokyo', '35.60714835619635', '139.3955620148672', '<a href="/">東京'</a>, 'L1'); } </script> window.onload は、ブラウザを開くたびに実行されると思います。 IEでは、問題ないのですが、Firefoxの場合、表示されたマークをクリックして次のページへ移動して、その後、ブラウザで戻ってくると、マークが表示されないのです。 どうやら、Firefoxの場合、「window.onload」は、ブラウザから戻ってきた場合は動作していないのでは?と想像しています。 この場合、どのように記述するのが良いのでしょうか?ご指導宜しくお願い致します。 ※ javascriptの知識はほとんどありませんので、具体的なソースで教えて頂きたいです。