2014-01-11 180 views
-1

HTML廣東話訪問兒童>兒童...元素的jQuery

<div class="subNavStrip"> 
       <table class="navTable" style="width: 100%"> 
        <tr class="stripContainer"> 
         <td class="subNavStriptTitleContainer" style="width: 100%"><a class="subNavStriptTitle">app</a></td> 
         <td class="btnExpander"><a class="expanderSign">[--]</a></td> 
         <td class="nextPrevContainer"><a class="prev">Prev</a></td> 
         <td><a style="color: gray;">|</a></td> 
         <td class="nextPrevContainer"><a class="next">Next</a></td> 
         <td><div class="scrollup subScrollup"></div></td> 
         <td><div class="subShutter"></div></td> 
        </tr> 
       </table> 
      </div> 

jQuery的

$(".subNavStrip").dblclick(function() { 
     var currentArea = $(this).parents(".subContainer").children(".expanderArea"); 
     currentArea.slideToggle("800", "easeOutCubic"); 
     var sign = $(this).children(".navTable").children(".stripContainer").children(".btnExpander").children(".expanderSign").text(); 
     if (sign == "[+]") $(this).children(".expanderSign").text("[--]"); 
     else $(this).children(".expanderSign").text("[+]"); 
    }); 

不能讓孩子們給孩子的價值......在VAR元素「的標誌'(第4查詢行)

我做錯了什麼?

回答

2

.stripContainer不是.navTable

chidren爲瀏覽器添加tbody標籤在table所以這不工作。

var sign = $(this).children(".navTable").children(".stripContainer"); 

嘗試.find()

var sign = $(this).find(".expanderSign").text(); 
+0

比它的工作,但是,你能解釋爲什麼.stripContainer不是孩子的.navTable? – Faizan

+0

@Faizan'tbody'標籤在'tr'前的'table'標籤之後由瀏覽器插入在鍍鉻中看到使用檢查元素 –

+1

這是真的..謝謝:) – Faizan

0

也許是因爲DOM是善意插入表和TR之間的TBODY:

enter image description here

所以TR不一個孩子,但是一個孫子。