dub*_*elj 36 javascript jquery click jquery-events
我想做的事:
( clickedObject === someDiv ) //returns true or false
Run Code Online (Sandbox Code Playgroud)
我尝试了什么
( $(e.target) === $('.selector') ); //returns a false negative.
Run Code Online (Sandbox Code Playgroud)
我的解决方法
( $(e.target).attr('class') === $('.selector').attr('class') ); //works as intended, not so clean though.
Run Code Online (Sandbox Code Playgroud)
将我点击的对象与DOM中的对象进行比较的正确方法是什么?
Ada*_*kis 39
要检查是否e.target有此类,您可以使用该hasClass功能.
if ($(e.target).hasClass("selector"))
Run Code Online (Sandbox Code Playgroud)
或者,如果你真的想比较对象,请注意jQuery选择器返回一个项集合,所以我想你会想要
if (e.target === $('.selector')[0])
Run Code Online (Sandbox Code Playgroud)
Boj*_*les 32
你很亲密 .is()改为使用:
if($(e.target).is('.selector')) {
// Your code
}
Run Code Online (Sandbox Code Playgroud)
这里的技巧是你包装e.target一个jQuery对象,以允许它访问所有有用的jQuery方法.
如果你只是看看是否e.target有某个班级,请尝试使用.hasClass()以下代码.is():
if($(e.target).hasClass('selector')) {
// Your code
}
Run Code Online (Sandbox Code Playgroud)
这两种方法都有效,虽然.hasClass()对代码的作用更清楚,但比使用方法更快.is()
| 归档时间: |
|
| 查看次数: |
23568 次 |
| 最近记录: |