$(document).mousemove( function(){
switch(a) {
case '1':
$('th#1').mouseover(function(){showSubmenu;});
$('th#1').mouseout(function(){hideSubmenu=setTimeout ("$('div.submenu#sub1').hide();flagSub=0;",100)});
$('th#submenu1').mouseover(function(){clearTimeout(hideSubmenu);
submenu.css('background-color','red');
})-'это switch(a) закрывается? ну и почему должен второй блок сработать?
break;
case '2':
$('th#2').mouseover(function(){showSubmenu;})
$('th#2').mouseout(function(){hideSubmenu=setTimeout("$('div.submenu#sub2').hide();flagSub=0",100)})
break;
}-закрытие switch(a)
});-закрытие $(document).mousemove( function(){
})-лишняя по идее;