在jQuery中单击一个元素外,如何触发click函数?

时间:2013-10-31 08:12:20

标签: jquery jqgrid eventtrigger

    $('body').not('#test').on('click',function(){
            //code....
    });

我写了这段代码,但它不起作用。我有一个名为#test的jQgrid,我想在单击网格时触发单击功能。另外,我尝试了blur()函数,但没有结果。请帮帮我。

2 个答案:

答案 0 :(得分:1)

$('body').click(function(e) {
    if ( !$(e.target).closest('#test').length ) {
        //your code here
    }
});

Live demo

说明/ docs

  • event.target - 发起事件的DOM元素;
  • .closest()检查元素或其任何祖先是否与给定的选择器匹配;
  • .length检索匹配元素的数量(> = 0);
  • Logical NOT operator:将操作数转换为布尔值并返回相反的布尔值。数字0是一个假值,因此!0 === true。其他.length值是真实的:!1 === false

答案 1 :(得分:0)

$('body').on('click',function(e) {
    var $target = $(e.target);
    if ($target.attr('id') != 'test') {
        ...
    }
}