2010-07-05 69 views
4

我已经使用javascript来显示div由onclick,但当我点击外部div我想隐藏div。如何在JavaScript中做到这一点?我使用的JavaScript代码..如何通过onclick使用javascript来隐藏div?

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

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

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

回答

3

你可以使用模糊()函数,当你点击别的地方

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

$("#hidelink").blur(function() { 
    $("#divtoHide").hide(); 
}); 
+1

如果他用了jQuery .... – alecwh 2010-07-05 07:00:13

0

使用jQuery,这将是那么容易,因为:

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

10

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'; 
    } 
}