var _focus; function clickedOutsideElement(elemId, evt) { var e = ''; if(window.event) { e = getEventTarget(window.event); } else { e = getEventTarget(evt); } if (e.id == elemId.id) { if(elemId.firstChild.style.display == 'block') { elemId.firstChild.style.display = 'none'; _focus = ''; } else { elemId.firstChild.style.display = 'block'; } } else { elemId.firstChild.style.display = 'none'; _focus = ''; } } function getEventTarget(evt) { var targ = (evt.target) ? evt.target : evt.srcElement; if(targ != null) { if(targ.nodeType == 3) targ = targ.parentNode; } return targ; } document.onclick = function(evt) { if (_focus) { clickedOutsideElement(_focus, evt); } }