views:

117

answers:

4

I have used a javascript to show div by onclick but when i click outside div i want to hide the div. How to do it in javascript? i'm using javascript code..

<a href="javascript:;" onClick="toggle('one');">  

function toggle(one)
{
    var o=document.getElementById(one);

    o.style.display=(o.style.display=='none')?'block':'none';
}
A: 

great article , that help you

http://www.netlobo.com/div_hiding.html

Haim Evgi
+1  A: 

you can use blur() function when you clicked somewhere else

$("#hidelink").click(function() {
    $("#divtoHide").show();
});

$("#hidelink").blur(function() {
    $("#divtoHide").hide();
});
D.J
If he uses jQuery....
alecwh
A: 

Use jQuery and this will be as easy as:

$("button.hide").click(function(event){ $("div.hidethis").hide() });

alecwh
+2  A: 

HTML

<a href="#" onclick="toggle(event, 'box');">show/hide</a>

Javascript

// click on the div
function toggle( e, id ) {
  var el = document.getElementById(id);
  el.style.display = ( el.style.display == 'none' ) ? 'block' : 'none';

  // save it for hiding
  toggle.el = el;

  // stop the event right here
  if ( e.stopPropagation )
    e.stopPropagation();
  e.cancelBubble = true;
  return false;
}

// click outside the div
document.onclick = function() {
  if ( toggle.el ) {
    toggle.el.style.display = 'none';
  }
}
galambalazs