IE9 になると、addEventListener が追加されますが、それまでは以下のような 実装が一般的です。但し、既存の他の関数名と同じにならないように "lightboxTool" という名前空間を作成しています。
if ( !window['lightboxTool'] ) { window.lightboxTool = {}; } lightboxTool.addEvent = function( obj, evt, callback_func ) { if ( obj.attachEvent ) { obj.attachEvent( "on" + evt , callback_func ); } else { obj.addEventListener( evt , callback_func , false ); } }
以下は、ウインドウのロードとアンロード時のイベントの登録です。 ( Opera の unload では、ページを移動した時に実行されます )
function window_load() { alert("window_load"); } function window_unload() { alert("window_unload"); } lightboxTool.addEvent(window, 'load', window_load); lightboxTool.addEvent(window, 'unload', window_unload);
タグ:JavaSctipt
|
【JavaScript DOMの最新記事】
- IFRAME 内に外部の javascript を読み込んで画面を作成する / document.write での構築
- JavaScript : setTimeout の第一引数の正しい書き方。
- JavaScript でクリックの代替( 古くは dispatchEvent で呼び出し )、現在は jQuery の click() ではリンクの URL を開く事はでき無いので、$("セレクタ")..
- JavaScript : リンクから _blank で開いたページを JavaScript で閉じる場合の動作テスト
- JavaScript : ブラウザの表示を半透明で暗くする方法( scrollHeight で高さ決定 )
- JavaScript DOM と jQuery : エレメントの参照
- JavaScript : リンクのテキストの取得( Chrome、Firefox、IE / textContent、innerText、text、replace、jQuery )
- 動的に作成された IFRAME の キャラクタセットのブラウザ別の違い
- ローカル記憶域 : window.localStorage
- JavaScript : zIndex の最大値と思われる 0x7FFFFFFF を各ブラウザでテストしました
- JavaScript : 最後にクリックしたテキストフィールドを保存する
- JavaScript : クリックした要素の位置を計算して、近くにウインドウを開く