teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

題名の変更、加筆、修正。

2016/12/15 03:10

投稿

aaaaaaaa
aaaaaaaa

スコア501

title CHANGED
@@ -1,1 +1,1 @@
1
- 子要素までイベントが発生する理由
1
+ 子要素イベントが発生する理由とは
body CHANGED
@@ -5,9 +5,9 @@
5
5
  ```
6
6
  mouseenter、mouseleaveとmouseover、mouseoutでspanの親要素である<p>にイベントが発生しないか監視していたとします。するとこの二種類は、下記の違いが現れます。
7
7
 
8
- 前者(mouseenter、mouseleave)だと、pのみイベントが発生しますが、後者だと```p```だけでなく```span```までイベントが発生します。ここで質問ですが、これはイベントキャプチャと呼ばれる
8
+ 前者(mouseenter、mouseleave)だと、pのみイベントが発生しますが、後者だと```p```だけでなく```span```までイベントが発生します。**ここで質問ですが、これはイベントキャプチャと呼ばれる親要素(```p```)で発生したイベントが子要素(```span```)伝播する現象が発生するために、このような動きになるのでしょうか。**
9
- 親要素(```p```)で発生したイベントが子要素(```span```)伝播する現象が発生するために、このような動きになるのでしょうか。後者がイベントが最上位ノードに伝播するバブリングを行うことは知っておりますが、
10
- キャプチャするのかどうか、が分かりません。
9
+ 後者がイベントが最上位ノードに伝播するバブリングを行うことは知っておりますが、キャプチャするのかどうか、が分かりません。
11
10
 
12
- 二つ目の質問ですがもし、このspanのイベントまでを補足するということは、逆に```p```に親要素が存在していた場合、```span```がそうだったように```p```の親要素までイベントが発生してしまうのでしょうか。
11
+ 二つ目の質問ですがもし、このspanのイベントまでを補足するということは、逆に```p```に親要素が存在していた場合、```span```がそうだったように、**バブリング**で```p```の親要素までイベントが発生してしまうのでしょうか。
12
+
13
- pのみイベントを発生させ、親要素の伝播を止めるとき、```return falseやe.stopPropagation()、e.preventDefault()```のうち```e.prebentDefault```で止められますか。
13
+ また、```p```のみイベントを発生させ、親要素の伝播を止めるとき、```return falseやe.stopPropagation()、e.preventDefault()```のうち```e.prebentDefault```で止められますか。