• 締切済み

jqueryのthisはイベントが起きている要素?

jqueryのthisはイベントが起きている要素を示すそうですが、 下記の例の.js-is-input-error1をthisにしても必須項目と出てきません。 こちらの例であればイベントが発生している要素とは、必須項目というテキストが出て来るspanタグがそれに該当する要素ではないのでしょうか? https://codepen.io/anon/pen/VmgPav アニメーションなら動いている要素が、イベントが発生している要素ということでしょうか? イベントが発生している要素というのがどうもはっきりわかりません。 アニメーションなら、(div.anime).animation()ならdiv.animeがイベントが発生している要素ですよね。 (button).click() { (div.anime).animation() } であればbuttonではなくdiv.animationがイベントが起きている要素ですよね?

みんなの回答

回答No.3

$(’div.anime’).animation('width','100%'); はイベントを起こしてるのではありません。 要素の操作をしてるだけです。

  • doraneko66
  • ベストアンサー率11% (535/4742)
回答No.2

イベントを起こしているのは、ボタンです。 書き方がめちゃくちゃだから、ちょっと良くわかりませんが functionはどこにあたりますか?

noname#226032
質問者

補足

$('button’).click(function{ $(’div.anime’).animation('width','100%'); }) の場合イベントを起こしているのはdivではなくbuttonなのですね。 アニメーションをしているのはdivなのに、イベントを起こしているのはbuttonということなので、イベントとは、動く、変化するという意味ではないのですね。 動く、変化するの開始をする始動ポイントのことをイベントを起こすと表現しているのでしょうか?

回答No.1

なんんか質問内のjavascript無茶苦茶なんで想像で回答します。 $("button").click(function(){ alert(this + "押されたよ"); }); 上記のような場合はボタンが押されたらってことなんで、ボタンが押されたら alert(this + "押されたよ"); を実行してねってことです。 なのでこの場合のイベントはクリックでfunction内のthisは押されたボタンです。

noname#226032
質問者

お礼

$("button").click(function(){ alert(this + "押されたよ"); }); のようにイベントファンクションの対象と実際にイベントが起こる要素が同じ場合はわかりやすいですが、下記のように違う場合どれかわからなくなります。 $('button’).click() { $(’div.anime’).animation('width','100%'); } の場合、

関連するQ&A