$target.is("a.foo")
将返回true或false,取决于目标是否匹配内部是()。另一个类似于is()的JQuery函数是什么?
如果我想检查()看到什么,该怎么办?我使用什么功能?
我试着alert($(target.is())
看看我是否能够找出目标是什么,但我刚刚得到的值为false。
$target.is("a.foo")
将返回true或false,取决于目标是否匹配内部是()。另一个类似于is()的JQuery函数是什么?
如果我想检查()看到什么,该怎么办?我使用什么功能?
我试着alert($(target.is())
看看我是否能够找出目标是什么,但我刚刚得到的值为false。
我不确定我是否理解这个问题,但根据您的主题,此处类似的jQuery功能应该是.hasClass()
。
$target.hasClass('foo'); // true if $target contains a className 'foo'
你可以尝试event.target
:
目标属性可以是注册的事件或它的后代元素。将event.target与此进行比较以确定事件是否由于事件冒泡而被处理通常很有用。当事件发生时,此属性在事件委派中非常有用。
$('a').click(function(event){
var $target = $(event.target);
if($target.is("a.foo")) {
...
}
})
u可以使用的是()来检查一些变量返回的功能; 它非常类似于hasClass方法..
$('a').hover(function() {
$target = $(this);
if(!$target.hasClass('active')) {//or u can use is('#active') to check id
//to prevent same response on same object hover
$('a').removeClass('active');
$target.addClass('active');
$('.allPages').hide();
var getID = $target.attr('id');
$('#'+getID).show();
};
});
如果会使用对象的console.log,并同时在$目标和a.foo的选择的将typeof这不会是一个问题?
即
console.log($('a.foo'));
console.log(typeof($('a.foo')));
console.log($target);
console.log(typeof($target));
我想这是什么。就是()将被检查,测试两个对象的价值和类型,类似于“===”虽然我可能是错的
对我来说,它看起来像你想找出目标是否被发现。 他们的方式来做到这一点:
if($target.length > 0){
//found
}
如果你想获得节点名称做:
$target.get(0).nodeName
不,我知道目标被找到了,我只是不知道它是什么。 – 2012-07-10 09:05:31
编辑答案,如果你想得到节点名称,如:div,li,表单等。 – 2012-07-10 12:53:55
是的,这是正确的。因为这是给予is()的信息。 – 2012-07-10 20:06:21
所有的jQuery对象的属性保持原来的选择:
var $target = $('#originalSelector');
alert($target.selector); // Alerts '#originalSelector'
*“是什么如果我想检查()看到什么?“*这是什么意思?如果你想知道它是如何工作的,请查看源代码。 – 2012-07-10 08:50:51
我想OP是要求一个函数,你可以调用一个jQuery对象来返回“a.foo”,一个描述元素的字符串。问题是,一个目标可以使用jQuery针对许多不同的方式,所以没有一个单独的字符串可以描述一个元素“是”。元素可以是“a”或“a.foo”或“a [href ='foobar']”或“a.foo#bar [href ='foobar']”。所有这些都可能与您的目标匹配,但无法调用反函数。 – tb11 2012-07-10 08:55:22
你尝试过'$ target.is.toString()'吗? – 2012-07-10 08:58:13