// Copyright 2006-2007 javascript-array.com

  var timeout = 500;
  var closetimer = 0;
  var ddmenuitem = 0;

    // open hidden layer
    function mopen(id)
    {
      // cancel close timer
      mcancelclosetime();

        // close old layer
        if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';

          // get new layer and show it
          ddmenuitem = document.getElementById(id);
          ddmenuitem.style.visibility = 'visible';

    }
    // close showed layer
    function mclose()
      {
        if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
      }

    // go close timer
    function mclosetime()
      {
        closetimer = window.setTimeout(mclose, timeout);
      }

    // cancel close timer
    function mcancelclosetime()
      {
        if(closetimer)
          {
            window.clearTimeout(closetimer);
            closetimer = null;
          }
      }

    // close layer when click-out
    document.onclick = mclose;
