﻿//  Developed by Roshan Bhattarai 
//  Visit http://roshanbh.com.np for this script and more.
//  This notice MUST stay intact for legal use
$(document).ready(function() {

document.getElementById('mainbody').onclick = function() {
        var element = document.getElementById('menulist');
        if (element)
        if ((element.style.visibility == 'visible') && ( (openby == "click") || (openby == "focus")) && (alreadyproceed == false)) {
            element.style.visibility = 'hidden'; 
        }
        alreadyproceed = false;
        }

    //slides the element with class "menu_body" when paragraph with class "menu_head" is clicked 
var elements = document.getElementsByClassName("menu_head");
for (var key in elements) {
    var val = elements[key];
    val.onclick = function() {
   $(this).next("div.menu_body").slideToggle(300).siblings("div.menu_body").slideUp("slow");

}
}


    
});



// "getElementsByClassName" не определен IE, 
// так что этот метод можно реализовать в JavaScript 
if(document.getElementsByClassName == undefined) { 
   document.getElementsByClassName = function(cl) { 
      var retnode = []; 
      var myclass = new RegExp('\\b'+cl+'\\b'); 
      var elem = this.getElementsByTagName('*'); 
      for (var i = 0; i < elem.length; i++) { 
         var classes = elem[i].className; 
         if (myclass.test(classes)) { 
            retnode.push(elem[i]); 
         } 
      } 
      return retnode; 
   } 
}; 

var openby = "";
var alreadyproceed = false;

function showhidemenubyclick() {
    var element = document.getElementById('menulist');
    if (element) {
        if (element.style.visibility == 'hidden') {
            element.style.visibility = 'visible';
            openby = "click";
            alreadyproceed = true;        
        }
        else {
            if ((openby == "click") || (openby == "focus"))
                element.style.visibility = 'hidden'
            if (openby == "hover") {
                openby = "click";
                alreadyproceed = true; 
            }
        }
    }
}      

   function showmenubyhover() {
    var element = document.getElementById('menulist');
    if (element) {
        if (element.style.visibility == 'hidden') {
            element.style.visibility = 'visible';
            openby = "hover";
        }                   
    }
}

function hidemenubyout() {
    var element = document.getElementById('menulist');
    if ( (element) &&  (openby == "hover")) {   
            element.style.visibility = 'hidden'
        } 
}

function showonfocus(){
     var element = document.getElementById('menulist');
    if (element) {
        if (element.style.visibility == 'hidden') {
            element.style.visibility = 'visible';
            openby = "focus";   
        }
        }
}

function hideonblur(){
     var element = document.getElementById('menulist');
     if (element) {
         if (element.style.visibility != 'hidden') {
             if (openby == "focus")
                 element.style.visibility = 'hidden'
         } 
     }
}



