jqueryとアロー関数の関係

jqueryを使用してボタンクリックイベントを記述するのは非常に簡単です。クリックしたボタンを選択するのも非常に簡単です。$(this)で直接選択できます。

// html
<button class = "btn">クリックする</ button>
// js
//通常の関数
$( '。btn')。click(function(){
	警告(「消えたい」)
	$(this).hide();
	console.log($(this)); //現在選択されているjquery要素、つまりbtnが選択されます
})

矢印機能を使用して、現在クリックされているボタンを選択するにはどうすればよいですか?

$( '。btn')。click((e)=> {
	console.log(this); //ウィンドウ{親:ウィンドウ、オープナー:null、上部:ウィンドウ、長さ:0、フレーム:ウィンドウ、…}
        console.log($(this)); // init [ウィンドウ]
})

これは不可能です!



まず、vueを参照してみましょう。vueのクリックイベントは、@ click = "clickfun()"属性を使用してHTMLにバインドされ
、$イベントパラメータをクリックされた関数に追加できます。

<button @click =“ clickfun($ event)”>点击</ button>
			
メソッド:{
	clickfun(s){
	// e.targetは現在クリックしている要素です
	// e.currentTargetはバインディングイベントの要素です
        }
}、

参照リンク:https://blog.csdn.net/webfront/java/article/details/80310763

だから:

//アロー関数
$( '。btn')。click((e)=> {
	console.log(e.target); //現在選択されているdom要素、つまりbtnが選択されます
	console.log($(e.target)); //現在選択されているjquery要素、つまりbtnが選択されます
	console.log(e.currentTarget); //現在選択されているdom要素、つまりbtnが選択されます
	console.log($(e.currentTarget)); //現在選択されているjquery要素、つまりbtnが選択されます
})

このような完璧なソリューションは、一般的にe.targetを使用します。

 

おすすめ

転載: www.cnblogs.com/pengxiangchong/p/12727942.html