2013-08-02 60 views
1

我有一個recurent函數,它遍歷一個ulli嵌套層次結構。它從某個節點冒出,直到到達ul,並且類別樹-0(它是層次結構的根)。javascript遞歸函數:未捕獲RangeError:超過最大調用堆棧大小

功能:

function setupSelectedCategory(elem) { 
    if (!elem) 
     return; 
    if (!elem.hasClass("tree-0")) { 
     if (elem.parent().prop('tagName') == 'UL') { 
      var index = jQuery(elem.parent().children()).index(jQuery(elem)); 
      jQuery(elem.parent()).accordion({ active: index }); 
     } 
     return setupSelectedCategory(jQuery(elem.parent())); 
    } 
    return; 
} 

問題:

我有一個堆棧溢出異常(至少在鉻)。也許我沒有退出功能的正確方式?有一些想法?

+0

的可能重複[是否有一個 「存在」 功能的jQuery?](http://stackoverflow.com/questions/31044/is-there-an -jquery-function-for-jquery) – Bergi

回答

2

的檢查是錯誤的..做

if(!elem || !elem.size()) 
+0

這也意味着目標類沒有祖先。 – bfavaretto

+0

工程就像一個魅力!非常感謝你 ;) –

相關問題