Рекурсия 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); } } |
Часовой пояс GMT +3, время: 15:50. |