Рекурсия TypeError: undefined
Здравствуйте, нужна помощь.
Без Рекурсии: = в зависимости от выбранного: s1 - s3, с Рекурсией: = undefined. Почему?
function hideMenu(strId){ var tar = strId.target; var op = window.getComputedStyle(tar).opacity;
function fun(obj){ obj.style.opacity -= 0.1; if(op > 0) { alert(obj); } if(op <= 0.1) { obj.style.visibility = ""; }}
// Без Рекурсии: = в зависимости от выбранного s1 - s3.
if(a[0] == tar) { var s1 = document.getElementById("subMenu1"); fun(s1); }
if(a[1] == tar) { var s2 = document.getElementById("subMenu2"); fun(s2); }
if(a[2] == tar) { var s3 = document.getElementById("subMenu3"); fun(s3); } }
function hideMenu(strId){ var tar = strId.target; var op = window.getComputedStyle(tar).opacity;
function fun(obj){ obj.style.opacity -= 0.1; if(op > 0) { setTimeout(fun, 100); } if(op <= 0.1) { obj.style.visibility = ""; } }
// Проблема при Рекурсии: obj = undefined.
if(a[0] == tar) { var s1 = document.getElementById("subMenu1"); fun(s1); }
if(a[1] == tar) { var s2 = document.getElementById("subMenu2"); fun(s2); }
if(a[2] == tar) { var s3 = document.getElementById("subMenu3"); fun(s3); } }
|