如果用jQuery点击arround元素

时间:2014-04-25 01:33:08

标签: javascript jquery html events

我只是想问一下是否有类似"如果点击了周围"在jQuery中,我的意思是,如果单击页面中除了一个元素之外的任何元素,或者是否有办法轻松实现这一点。

2 个答案:

答案 0 :(得分:1)

是的,您可以使用.not()

event.stoppropagation

  

描述:防止事件冒泡DOM树,防止任何父处理程序被通知事件。

$('#divID').not('#ElID').click(function(){
       //* code here */ 
});

<小时/> 或

:not()

$('#divID:not("#ElID")').click(function(){
       //* code here */ 
});

开始阅读jQuery API DocumentationLearning

<小时/> 在OP发表评论后更新。

Fiddle Demo

event.target.is()

$('#divID').click(function (event) {
    if (!$(event.target).is('#ElID')) {
        alert('Work');
    }
});

<小时/> Fiddle Demo

点击ID为ElID

的元素以外的任何地方
$('html').click(function (event) {
    if (!$(event.target).is('#ElID')) {
        alert('Work');
    }
});

答案 1 :(得分:1)

你可以试试这个:

$(document).on("click", function(event) {               
  if($(event.target).parents().index(yourElement) == -1) {                   
      // your code here
   }        
});