From 33058f2b292b3a581333bdfb21b8f671898c5060 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 14:40:17 -0500 Subject: initial commit --- files/ja/web/api/event/currenttarget/index.html | 105 ++++++++++++++++++++++++ 1 file changed, 105 insertions(+) create mode 100644 files/ja/web/api/event/currenttarget/index.html (limited to 'files/ja/web/api/event/currenttarget') diff --git a/files/ja/web/api/event/currenttarget/index.html b/files/ja/web/api/event/currenttarget/index.html new file mode 100644 index 0000000000..a74320b4a8 --- /dev/null +++ b/files/ja/web/api/event/currenttarget/index.html @@ -0,0 +1,105 @@ +--- +title: Event.currentTarget +slug: Web/API/Event/currentTarget +tags: + - API + - DOM + - Gecko + - NeedsBrowserCompatibility + - Property +translation_of: Web/API/Event/currentTarget +--- +

{{APIRef("DOM")}}

+ +

イベントは DOM を横断するので、イベントの現在のターゲットを識別します。イベントが発生した要素を特定する event.target とは対照的に、常にイベントハンドラがアタッチされた要素を参照します。

+ +

+ +

event.currentTarget は、同じイベントハンドラを複数の要素にアタッチしているときに使用すると興味深いです。

+ +
function hide(e){
+  e.currentTarget.style.visibility = "hidden";
+  // この関数がイベントハンドラとして使用されるとき: this === e.currentTarget
+}
+
+var ps = document.getElementsByTagName('p');
+
+for(var i = 0; i < ps.length; i++){
+  ps[i].addEventListener('click', hide, false);
+}
+
+// 周辺をクリックすると段落が消えます。
+
+ +

仕様

+ + + + + + + + + + + + + + +
仕様状態コメント
{{SpecName("DOM2 Events", "#Events-Event-currentTarget", "Event.currentTarget")}}{{Spec2("DOM2 Events")}}Initial definition
+ +

ブラウザ実装状況

+ +

{{CompatibilityTable}}

+ +
+ + + + + + + + + + + + + + + + + + + +
機能ChromeFirefox (Gecko)Internet ExplorerOperaSafari
基本サポート{{CompatVersionUnknown}}{{CompatVersionUnknown}}{{CompatVersionUnknown}}[1]{{CompatVersionUnknown}}{{CompatUnknown}}
+
+ +
+ + + + + + + + + + + + + + + + + + + +
機能AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
基本サポート{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}{{CompatUnknown}}
+
+ +

[1] Internet Explorer 6 から 8 では、イベントモデルが異なります。イベントリスナは非標準の element.attachEvent メソッドでアタッチされます。このモデルでは、event.currentTarget と同等の機能はなく、this はグローバルオブジェクトです。event.currentTarget 機能をエミュレートするための 1 つの解決策は、ハンドラを最初の引数として要素とともに Function.prototype.call を使用するハンドラを呼び出す関数でラップすることです。この方法であれば、 this は予想通りの値になります。

+ +

関連項目

+ +

Comparison of Event Targets

-- cgit v1.2.3-54-g00ecf