docs: function nodeClicked(e){
  
    // Find the target
    var t = e.target;
  
    // If the click target is actually a file (rather than a directory), ignore it
    if(t.tagName.toLowerCase() !== 'div' || t.className === 'children') return;
  
    // Recurse upwards until we find the actual directory node
    while(t && t.className.substring(0,3) != 'dir') t = t.parentNode;
  
    // If we're at the root node, then do nothing (we don't allow collapsing of the whole tree)
    if(!t || t.parentNode.id == 'tree') return;
  
    // Find the path and toggle the state, saving the state in the localStorage variable
    var path = t.getAttribute('rel');
    if(t.className.indexOf('open') !== -1){
      t.className=t.className.replace(/\s*open/g,'');
      if(window.localStorage) window.localStorage.removeItem('otis_openPath:' + path);
    }else{
      t.className += ' open';
      if(window.localStorage) window.localStorage['otis_openPath:' + path] = 'yes';
    }
  }