tmutton tmutton - 1 year ago 112
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.

Answer Source

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

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download