首页 > 解决方案 > jQuery $(this) VS event.currentTarget

问题描述

我正在练习一些 jQuery 并且有一些返回预期结果的问题。据我了解,要在事件处理程序中定位选定元素,我们可以将事件传递给回调函数并event.currentTarget改为使用。

所以这:

$('.nav-menu').on('mouseleave', ()=>{
  $('.nav-menu').hide();
});

会变成这样:

$('.nav-menu').on('mouseleave', (event)=>{
  $(event.currentTarget).hide();
});

如果我理解这个链接(W3Schools)是正确的,同样的事情可以使用$('this')

$('.nav-menu').on('mouseleave', ()=>{
  $(this).hide();
});

在最后一种情况下,回调函数不需要将事件作为参数传递。它也更短,所以很酷:)

但它不起作用。我不确定为什么。前 2 个解决方案工作正常。

建议任何人?谢谢!

标签: jquery

解决方案


推荐阅读