什么是另一个类似于()的JQuery函数?

时间:2012-07-10 08:43:32

标签: javascript jquery html

$target.is( "a.foo" )将返回true或false,具体取决于目标是否匹配内部是()。

如果我想检查()看到的内容怎么办?我使用什么功能?

我尝试alert($(target.is())看看我是否能找到目标是什么,但我得到的值是假的。

7 个答案:

答案 0 :(得分:1)

您可以尝试event.target

  

target属性可以是为事件注册的元素或其后代。将event.target与此进行比较通常很有用,以确定是否由于事件冒泡而处理了事件。当事件冒泡时,此属性在事件委派中非常有用。

$('a').click(function(event){
     var $target = $(event.target);
     if( $target.is("a.foo") ) {
        ...
     }
})

答案 1 :(得分:0)

我不确定我是否理解这个问题,但根据您的主题,这里类似的jQuery函数将是.hasClass()

$target.hasClass('foo'); // true if $target contains a className 'foo'

答案 2 :(得分:0)

你可以用is()检查一些变量来返回一个函数; 它与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();

  };
});

答案 3 :(得分:0)

如果在对象上使用console.log,以及在$ target和a.foo选择器的typeof上,这不是问题吗?

console.log($('a.foo'));
console.log(typeof($('a.foo')));
console.log($target);
console.log(typeof($target));

我认为这是.is()将要检查的内容,测试两个对象的值和类型,类似于'===',尽管我可能错了

答案 4 :(得分:0)

我认为这可以帮到你

http://api.jquery.com/jQuery.type/

示例在这里:

jQuery.type(target);

答案 5 :(得分:0)

对我而言,您似乎想知道是否找到了目标。 他们这样做:

if($target.length > 0){
    //found
}

如果您想获取节点名称:

$target.get(0).nodeName

答案 6 :(得分:0)

所有jQuery对象都在属性中保留其原始选择器:

var $target = $('#originalSelector');

alert($target.selector); // Alerts '#originalSelector'