tmutton tmutton - 8 months ago 47
jQuery Question

Exclude click event based on condition?

I'm trying to set conditions on a jQuery event. I have an input element and a div. I want to detect a click anywhere on the page and to execute that method but only if the click is not on the input or div.


Use the jQuery click() or live() functions and then check the target of the click event using the jQuery is() function.

  1. bind click event on document
  2. if the target is not input or div continue


$(document.body).click(function(e) {
  if( !$("input, div") ) {
    console.log("Run function because image or div were not clicked!");

Example webpage =>

Example firebug output after clicking around on example page

alt text