event.target不返回已单击的确切元素

Jus*_*ite 5 jquery jquery-mobile

我正在尝试使用event.target来查找已单击的确切元素.我正在使用jQuery Mobile,链接在navbars中.

当页面最初加载时,event.target执行它的工作并返回正确的'a'元素(那里有一个编程点击导致它).但是,当您单击链接时,event.target将返回"span"元素,而不是单击的"a"元素.

如果单击链接文本部分的周围区域,则event.target将返回正确的"span"元素.

我需要event.target来返回已被点击的确切'a'元素,无论您是否直接点击链接,只要用户点击链接的给定区域(包括'span'区域) .

你可以在这里看到它

如果我需要提供更多信息,请与我们联系.谢谢!

Val*_*tor 13

你可以试试event.currentTarget而不是event.target


Dr.*_*lle 9

用这个:

   var target=(event.target.tagName=='A')
                ? event.target
                : $(event.target).closest('a')[0]
Run Code Online (Sandbox Code Playgroud)

当您单击链接的子项时,它将返回ascendent A元素

或者干脆: this