function hidden()
{
  //alert( ad100.style.display );
  if(window.event.srcElement.tagName=="BODY")
    ad100.style.display="none";
}

解决方案 »

  1.   

    <div id="ad100" name="ad100" style="position: absolute; top: 10; right: 10; width: 300; height: 300;cursor:hand; background-color:c0c0c0; display:none"> 
    </div> <div id="xx">
    <a href="#" onclick="return show();" > AAAAAAAAAAAAAAAAAA </a> <br>
    <a href="#" onclick="return show();" > BBBBBBBBBBBBBBBBBB </a> <br>
    <a href="#" onclick="return show();" > CCCCCCCCCCCCCCCCCC </a> <br>
    </div><script language="javascript">
    var Clicked,bodycliked;
    function show()
    {
      //alert( ad100.style.display );
      ad100.style.display="block";
      Clicked=true;}
    function hidden()
    {
      //alert( ad100.style.display );
      if (eval(Clicked==true)&&eval(ad100.style.display=="block"))
      {
        Clicked=false;
      return false;  }
      else
      {
      return ad100.style.display="none";
      }}
    </script>
    <html>
    <head><title> Test </title></head>
    <body  onclick="return hidden();"><table width="600" height="1000" bgcolor="cccccc" align="center">
    <tr><td></td></tr>
    </table></body>
    </html>
      

  2.   

    <div id="ad100" name="ad100" style="position: absolute; top: 10; right: 10; width: 300; height: 300;cursor:hand; background-color:c0c0c0; display:none"> 
    </div> <div id="xx">
    <a href="#"> AAAAAAAAAAAAAAAAAA </a> <br>
    <a href="#"> BBBBBBBBBBBBBBBBBB </a> <br>
    <a href="#"> CCCCCCCCCCCCCCCCCC </a> <br>
    </div>
    <script language="javascript">
      
      document.body.onclick=function(){ 
      if(event.srcElement.tagName == 'A' && ad100.style.display=="none"){
       ad100.style.display = "block";
      }else if(event.srcElement.tagName != 'A' && ad100.style.display=="block"){
       ad100.style.display="none";
      }
     }
    </script>