• 締切済み

オーバーライドについて。

共通のjsファイルにonUnloadのイベントで実行するように、ある処理 を記述していたとします。 それで、画面によってはonUnloadのイベントで別の処理も行うので、 共通の処理をオーバーライドして個別の処理を先に実行させて その後、jsファイルで準備している共通の処理を実行させたいと思 っています。 上記の内容を実現するためには、どのような実装をすればよいの でしょうか? よろしくお願いします。

みんなの回答

  • yuu_x
  • ベストアンサー率52% (106/202)
回答No.2

onbeforeunload ( MSIE specific ) または、 var preUnload = window.unload || new Function; window.unload = function( ) {  // ...  preUnload( ); }

回答No.1

form.onsubmitの上書きで使ってる方法ですが。 未検証です。 common.js window.onunload=function(){ // do something } -------------------- index.html <script src=common.js></script> <script> var common_unload=window.onunload; window.onunload=null; //初期化してcommon_unload変数との関連づけを切る。 // onunloadを再定義 window.onunload=function(){ // 固有の処理を実行する // 最後の共通の処理を実行する common_unload(); }

関連するQ&A

  • 外部ファイル(*.js)使用、さらにHTMLにも記述!?

    全ページで必要な共通処理A~Zを外部ファイルにまとめて記述し、各ページのみの処理AAから、共通処理Aを呼び出すことはできるのでしょうか? すみません、説明が下手で。 <html> <head> <script language="JavaSript" src="ファイル名.js"> <!-- function 処理AA{   ・   ・   ・   共通処理Aを呼び出して、処理   ・   ・ } // --> </head> <body> ・ ・ という感じのことってできますか? やってみた感じではできなかったのですが、 私の記述が間違っているだけで、実際はできるのではないか・・と思ったのですが、判断できません。 あるいは、共通処理と個別処理で外部ファイルを2つ作って、片方のファイルから、さらに別ファイルを呼ぶとか、 できますか? 手持ちの参考書を片っ端から調べても載っていません。 ネットでのQ&Aをチェックしても見つかりません。 どなたか教えてください。 よろしくお願いします。

  • JAvaScriptの外部ファイルの記述について

    HTML内にJavaScriptの処理書くのが嫌で、外部ファイルにしてJavaScriptを読み込むようにしたのですが、このファイルに、実行したい処理を複数書いてしまうとHTMLで正しく処理されなくなるのは何故ですか?.jsファイルには処理は1つしか記述できないのでしょうか?CSSファイルみたいに1つのファイルに何個も処理を記述してHTMLに反映させるようにしたいのですが・・・。どなたにも質問できず困っています。どなたか教えて下さい。jsファイルには処理は1つしか記述できないものなのかどうか回答お願い申し上げます。

  • AJAX通信が終わるまで次の処理へ進まないよう変更

    ■前提 処理1 ここで外部jsを呼び出す。外部js内では、jQueryで$.postなど色々 処理2 ■困っていること ・外部js処理が終わらないのに、処理2が走ってしまうことがある ■やりたいこと ・外部js処理が終わるまで、処理2を走らせたくない ■知りたいこと ・$.postのsuccessに処理2を記述、以外の方法で、やりたいことを実現するにはどうすればよいでしょうか?

    • ベストアンサー
    • AJAX
  • 画面を閉じる(×ボタンやタスクバーから)をトリガーに処理を行えるのでしょうか?

    親画面から子画面をポップアップ表示し、子画面に作成したボタンから(window.opener)をコールして、子画面を閉じる→親画面の処理を行う、という処理を実現しています。 ボタン押下時にJavaScriptをコールすることで処理は行えるのですが、ウィンドウの右上にある「×」ボタンや、タスクバーを右クリック→閉じるなどを行った際にも同じような処理を行うことはできるのでしょうか? 「画面が閉じられた」というトリガーにて処理を行うことができるのでしょうか? onUnloadイベントを試しましたが、「×」ボタンや、タスクバーを右クリック→閉じる場合は処理がおこわなわれませんでした。 よろしくおねがいします。

  • Access(VBA)のエラー処理

    いつもお世話になりますm(__)m Access2003(VBA)のエラー処理について教えて下さい。 いつも、エラー処理は、各private sub毎に記述しています。 例えば private sub A() on error goto ErrShori (処理など) exit sub ErrShori: (エラー処理) end sub private sub B() on error goto ErrShori (処理など) exit sub ErrShori: (エラー処理) end sub 上記のようにしていますが、エラー処理は共通で、どうにか1つの記述(?)で全てのプロシージャに対してエラー処理が出来ればと思っています。 いろいろ調べましたが見あたらず、今は一つ一つのプロシージャに「on error...」と書いています。 MDBファイル単位で「エラーがあるとこれを実行」のような共通のエラー処理を実装する事は出来ないのでしょうか? お詳しい方、是非ご教授下さい。可能であればサンプルを記述頂くと助かります。 宜しくお願い致しますm(__)m

  • ウィンドウを閉じたときのイベント処理

    「onUnload」でイベント処理を記述すると、ページを移動したときにも処理が行われますが、ウィンドウを閉じたときだけ処理を行いたい場合のイベントはどのように記述すればよいでしょうか? メインウィンドウからリンクをかけて、サブウィンドウを表示させ、そのサブウィンドウ内で何ページかリンクページを設定していますが、サブウィンドウ内でのページ移動中はそのままで、サブウィンドウを閉じてメインウィンドウに戻るときだけ、確認ウィンドウを1ページ表示させたいのです。 よろしくお願いします。

  • 初心者です。VisualStudioについて教えてください。(C++)

    初心者です。VisualStudioについて教えてください。(C++) VisualStudioのWindowsフォームプロジェクトを作成すると 「Form1」という簡易画面が自動で作成されます。 その画面にボタン等を追加していくと、そのボタン押下時の処理が 「Form1.h」にどんどん追加されていきます。 なぜヘッダファイルに処理の実装を記述していくのでしょうか? 基本的に、ヘッダとは関数やクラスを定義するだけのもので 実装はcppファイルに記述していくものだと研修等で教わったのですが。 なぜなのでしょう? ご教授下さい。 また、「Form1.h」ではなく「*.cpp」ファイルに実装を記述したい場合 どうのようにすればよいのでしょうか?

  • [VB.NET]Windowsアプリに、Page_PreRenderイベントは存在するか

    VB.NET2003,2005についての質問です。 下記の処理を、Windowsアプリケーションで実現することは可能でしょうか。   ・各コントロールのイベントで、メンバ変数であるフラグAに、値を設定する処理を行う。   ・各コントロールのイベントが「終了後」、このフラグAの内容によって、処理Bを実行したい。     例)ボタンクリックイベント→処理B       テキストチェンジイベント→処理B     ※各コントロールのイベントには、フラグAの判定処理を組み込まない 上記の処理は、ASP.NETであれば、Page_PreRenderイベントを利用することで実現できました。 Windowsアプリケーションには、ASP.NETにおける、Page_PreRenderイベントのようなものは存在するでしょうか。 存在しなければ、どのような方法で上記の処理を実現できるでしょうか。 以上、どうぞよろしくお願い致します。

  • PHP内でjsファイルの関数は使えないのでしょうか

    こんばんは、Webページ制作の勉強で問題にぶつかり、少々お知恵をお借りしたく質問させて頂きました。 あるPHPファイルの中の <!doctype html> <html> //ここにHTMLの記述があるとします。 </html> のHTMLの記述の中に <script src="example_A.js"></script> <script src="example_B.js"></script> のような形で他のページでも使っているJavascriptのファイルを読み込んで使用しようとしたのですが、一部の処理だけが行われないようのです。 そこでjsファイルの中で使えない記述に共通点が無いか確認してみたところ、 $(function() {   //ここに処理 }); のように、関数のみが動作して居ない事が解りました。 そこで質問なのですが、PHPファイルの中では、<html>の中で記述されたスクリプトだとしても関数の中で記述された処理は使えないという事なのでしょうか? また、もしPHPの中でも関数を動作させる方法があれば、教えて頂けないでしょうか。 宜しくお願い致します。

    • 締切済み
    • PHP
  • 処理実行中にボタンを非活性にして待機する

    お世話になっております。 作業マシン:WINDOWS Server2008 (仮想) 開発ツール:VWD2010(VB) 使用DB:SQLServer2008R2 にて、Webアプリを開発しております。 ASP.NET開発の経験はおおよそ1ヶ月程です。 【目的】 現在、ボタン押下時に外部ファイルを実行しておりまして、 (結果が戻るまで1分くらい) その間、ブラウザの操作を制限したいと考えています。 他のボタンを押したり、×ボタンで終了したり、 戻るキーで画面遷移したり…そういった操作の禁止です。 理想は、JavaScriptのconfirmを実行させたときの様な 「親画面が一切コントロールできない」状態ですが、 ボタンの非活性化(button.enabled=False とした画面での待機)等、 でもよいかと考えています。 【現状】 実行中 待機 などのキーワードで探しますと、 AJAXというキーワードがよく目に付きます。 よく目に付くという事は現行の主流なのかと思いますが、 JavaScriptでhtmlの動きを制限する程度の経験しかない今の自分には AJAXを理解して実装するまでには時間が掛かりそうです。 【相談内容】 今回、皆様にご教授願いたい事は、 時間のかかる処理を待つ間ブラウザ操作を制限するのに 比較的簡単に実現できる方法はないか?と、 その手段を教えて頂きたいのです。 また、以下の認識が正しいか、大きな誤りがあるか、教えてください。 --------ここから--------- プロセス実行中、ボタンを非活性にして待つのは、  「JavaScriptで各ボタンのbutton.enabled=False としてから  .vbファイルのbutton_clickイベント内でプロセス実行すれば言いだけでは?」 という認識の元、 外部JSファイル内に記載したJavaScript内で、 各ボタンのEnabled="False" を記述してやろうと思っています。 (現在外部JSファイル内の関数を呼ぶのに難儀する有様ですが。。) また、表示されてるhtmlソースのボタンタグ中にenabledは (.aspxに手動で記述を追記しても)表示されていません。 これでは enabledをFalseにする記述を書いてもブラウザ表示は変らないのでは…? --------ここまで---------- 本来、これほど焦点が定まっていない状態での質問は 回答してくださる皆様にも失礼とは思いますが、 それでも自力で方針を定める事が出来ず、相談致します。 何卒よろしくお願いします。

専門家に質問してみよう