Приветствую!
Есть такой код
function UserMenu(num)
{
$('body').attr("onclick","hideusermenu('1',"+num+")");
$('#playermenu'+num).fadeIn(400);
}
last_num=null;
function hideusermenu(click,num)
{
if((last_num!=null) && (last_num!=num))
{
$("body").attr("onclick","hideusermenu('2',"+num+")");
$('#playermenu'+last_num).fadeOut(400);
}
else
{
if(click == 1)
{
$("body").attr("onclick","hideusermenu('2',"+num+")");
$('#playermenu'+num).fadeIn(400);
}
if(click == 2)
{
$("body").attr("onclick","hideusermenu('1',"+num+")");
$('#playermenu'+num).fadeOut(400);
}
}
last_num=num;
}
<body onclick="hideusermenu(1,0);">
...
<div onclick="UserMenu('1');">
<div id="playermenu1" style="display:none"></div>
</div>
<div onclick="UserMenu('2');">
<div id="playermenu2" style="display:none"></div>
</div>
<div onclick="UserMenu('3');">
<div id="playermenu3" style="display:none"></div>
</div>
</body>
При клике на определенный блок вызывается функция которая открывает соответствующее меню.
Все практически работает кроме одного: если в дальнейшем кликать по body то последнее вызванное меню так же будет открываться и закрываться, в чем тут ошибка?