Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/79.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 单击空格时调用jquery函数_Javascript_Jquery - Fatal编程技术网

Javascript 单击空格时调用jquery函数

Javascript 单击空格时调用jquery函数,javascript,jquery,Javascript,Jquery,我需要知道如果有人在jsp页面的空白处单击,如何调用该函数 我尝试了下面的代码,但它无法按我所希望的方式工作 谁能告诉我怎么做 jQuery("*:not(select)").click(function(){ alert("clck"); //some code here }); 在这里,每当我单击函数将调用的选择框的外侧时,我都会尝试 如果我单击选择框,它将不会调用,但该函数一直被调用 为什么会发生这种情况?不确定除了在chrome中,它是否能在所有浏览器中工作

我需要知道如果有人在jsp页面的空白处单击,如何调用该函数

我尝试了下面的代码,但它无法按我所希望的方式工作

谁能告诉我怎么做

jQuery("*:not(select)").click(function(){

    alert("clck");
    //some code here

    });
在这里,每当我单击函数将调用的选择框的外侧时,我都会尝试

如果我单击选择框,它将不会调用,但该函数一直被调用


为什么会发生这种情况?

不确定除了在chrome中,它是否能在所有浏览器中工作

$('body').click( function (e) { 
    if ( e.target == this ) 
        alert('clck'); 
});

我可能会这样做:

$(document).on("click", function(e) {
    if (e.target === document || e.target.tagName === "BODY" || e.target.tagName === "HTML") {
        // Clicked on blank space
    }
});

它钩住
document
上的
click
事件,然后检查单击是否起源于文档(或
body
html
元素)。如果是,则用户在“空白”中单击(例如,不在文档中的其他元素上)。

如果希望特殊项目不包含在文档中,请尝试单击此选项

$('#itemtobeexcluded').on('click', function(e) {
   e.stopPropagation();
});
那么对于整个文档:

$(document).on('click', function (e) {
 // function body
});
也许这会有用

$(document).on('click', function (e) { 

        alert('clck'); 
});

因为事件传播,所以停止事件bubbling@A.Wolff那我怎么才能做到呢?@KVK你确定吗?再试一次。Mozilla默认情况下不会传递
事件
对象,但这里的答案明确地将变量
e
传递给事件
t.J。Crowder在他的答案中提出了一个很好的观点,即BODY不总是填充所有文档视口@Vaibhav的答案不够检查?@a.Wolff:
BODY
不总是填充视口。