9月更新・前月(8月)の人気記事トップ10 09/02/2024
- ( 01 – ) 【Labs】position:absoluteとwidth:100%を指定すると横幅の設定がうまくいかない場合の対処方法について
- ( 07 ↑) 【Mac】macOSをHigh SierraからMontereyにアップグレード
- ( 03 – ) 【Mac】横画面で撮影した動画をYouTubeショート用にMacのiMovieで縦画面に編集する方法
- ( 10 ↑) 【iPhone / iPad】iPhoneのツイッターアプリでユーザー名をコピーする方法
- (圏外↑) 【Labs】CSSだけでドロップダウンメニュー
- ( 02 ↓) 【jQuery】入門2. jQueryをHTMLに組み込む
- ( 09 ↑) 【Mac】Safariでソースコードを見る方法
- ( 04 ↓) 【jQuery】入門7. jQueryで新しいWindowを開く
- ( 06 ↓) 【2024年5月】iPad画面解像度まとめ
- (圏外↑) 【GIMP】レイヤーをロック
【JavaScript】addEventListenerの基本的な書き方 その3
こんにちは(・∀・)
今日はJavaScriptの「addEventListener」の基本的な記述方法 その3です。
前回の投稿【JavaScript】addEventListenerの基本的な書き方 その2と前々回の投稿【JavaScript】addEventListenerの基本的な書き方でaddEventListenerの基本的な記述方法についてご紹介しました。
今日もその続きになります。
イベントリスナー作動条件
イベントリスナーの使用パターンです。
DOM構築後に処理を開始
DOM(htmlタグ)が読み込まれたら動作を開始します。
document.addEventListener('DOMContentLoaded', hoge, false);
「DOMContentLoaded」はイベントターゲット「document」にセットします。
サンプルではページが読み込まれたら「listen」の文字が表示されます。
JavaScript
var s1 = document.getElementById('sample1');
document.addEventListener('DOMContentLoaded', function(){
s1.innerHTML = 'listen';
}, false);
Result
ページ全体が読み込まれたら処理を開始
画像や他のスクリプト等、ページ全体が完全に読み込まれたら動作を開始。
window.addEventListener('load', hoge, false);
「load」はイベントターゲット「window」にセットします。
サンプルではページ全体が読み込まれたら「overlook」の文字が表示されます。
JavaScript
var s2 = document.getElementById('sample2');
window.addEventListener('load', function(){
s2.innerHTML = 'overlook';
}, false);
Result
ちなみにイベントターゲットは「element」、「document」、「window」の3つが基本となります。他にもイベントターゲットになるオブジェクトはありますが、ここでは省略します。
要素がクリックされたら処理を開始
要素がクリックされたら動作を開始します。
document.addEventListener('click', hoge, false);
「click」はイベントターゲット「document」にセットします。
サンプルのボタンをクリックするとボタンの文字が「voice」から「love」に変わります。
JavaScript
var s3 = document.getElementById('sample3');
s3.addEventListener('click', function(){
s3.innerHTML = 'l.o.v.e.';
}, false);
Result
voice
スクロールしたら処理を開始
画面をスクロールしたら処理を開始します。
window.addEventListener('scroll', hoge, false);
「scroll」はイベントターゲット「window」にセットします。
画面をスクロールすると「effort」の文字がたくさん?表示されます。
JavaScript
var s4 = document.getElementById('sample4');
window.addEventListener('scroll', function(){
s4.insertAdjacentHTML('beforeend', ' effort');
}, false);
Result
love is listen, overlook, voice and lot of
イベントリスナーを使用する上での注意点
イベントリスナーを使用するときの注意点です。
関数に引数を付けない
関数に引数を付けると動作しない場合があります。
obj.addEventListener('click', hoge(evt), false); ×
obj.addEventListener('click', hoge(), false); ×
obj.addEventListener('click', hoge, false); ○
以上addEventListenerの基本的な書き方 その3でした。
ちなみに、各サンプルのコードとサンプルデモのコードでは書き方が違うのわかりました⁉️
サンプルデモは無名関数でイベント登録してます。