не могу понять. зачем вы вот так пишите
var o = document.getElementById('submenu').className = 'hide';
если вы просто присваиваете новый класс то незачем это все присваивать переменной.
document.getElementById('submenu').className = 'hide';
на мой взгляд так правильней.