9
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

イベントオブジェクトfunction(e)のeとthisの違いについて 簡易メモ

Posted at

#この記事について
jQueryの学習中に気になったことを調べ、解決したので
メモとして書いています。

###・違いについて調べた経緯
ブラウザが元々持っている処理をキャンセルするメソッド
preventDefault()についての学習で以下の
コードが書かれていた。

script.js
$(function() {
  $('form').on('submit', function(e) {
    console.log('送信ボタンが押されました');
    e.preventDefault();
  });
});

このコードを見たときにeのイベントオブジェクトをfunctionの第一引数として持たせているが、thisでもいいのでは?
と思い,
イベントオブジェクトfunction(e)のeとthisの違いについて
調べました。

#eとthisの違いについて
###・this
関数の中に記述することでイベント発生元の要素を取得することができ、関数内で使用できる。上記のコードだと$('form')の要素。

script.js
$(function() {
  $('form').on('submit', function() {
    this == $('form')//←イメージ
  });
});

###・イベントオブジェクトe
function(e)と記述することでイベント発生元の要素だけでなく押されたキーの情報なども取得できる。

script.js
$(function() {
  $('form').on('submit', function(e) {
    e == $('form').on('submit',//←イメージ
  });
});
9
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?