ブラウザ操作はすべてイベントによって支配されています。これはオンラインアプリに限った話ではなく、普通のExcelなどのソフトウェアでも同じです。マウスなどのイベント → トリガー → 処理内容
という流れになります。トリガー部分はあらかじめイベントリスナーを追加しておくことで実現できます。
トリガーは拳銃のトリガーと一緒の意味で、よく発火(fire)などと言われます。直接的な日本語訳はありませんが、拳銃のトリガーを思い浮かべればわかりやすいかと思います。
イベントリスナー
指定の要素に指定のイベントが発生したら、何かの処理を行うという処理定義をあらかじめ設定しておきます。この設定は任意の要素に追加することができて、しかも重複イベントも登録可能です。重複している場合は、登録順にイベント処理が実行されます。途中で以降のイベントを中断するようにすることも可能です。
https://developer.mozilla.org/ja/docs/Web/API/EventTarget/addEventListener
js
1document.getElementById('指定要素のID名').addEventListener('イベントタイプ', function(e) {
2 //なんらかの処理内容
3 //下記デバッグ
4 //console.log('EVENT:'+ e, ', TYPE:'+ e.type, ', ELEMENT:'+ e.target);
5}, false);
上記document.getElementById('指定要素のID名')
が 要素を指定している部分 で、document.querySelector('CSSセレクタ')
としても同じです。
https://developer.mozilla.org/ja/docs/Web/API/Document/querySelector
イベントにはいろいろありデバイスによっても違います。よく使われるイベントタイプはclick, change, input
などです。他にもいろいろあり、マウスをクリックし始めたなどのイベントも取得可能です。詳しくは下記を参照してください。
https://developer.mozilla.org/ja/docs/Web/API/Event