父父下一个孩子选择器?

时间:2013-03-01 18:16:29

标签: jquery-selectors parent-child

如何简化此jquery选择器? 的 $(本).parent()的父()next()的儿童()的儿童()了slideDown( '正常');。。。。。

它有效,但我想学习如何改进它。 谢谢! :)

更新:以下是代码示例。

<tr>
    <td><div class="LinkHeader accordionButton">TRAINING VIDEOS<span class="right"></span></div></td>
  </tr>
  <tr>
    <!-- Content of Training Videos -->
    <td align="left" valign="top">
    <div class="accordionContent"> (I want to select this div)
        <div id="yunero"></div>
    </div>
    </td>
  </tr>

1 个答案:

答案 0 :(得分:0)

根据你的标记,写作会更短(并且可以说更清晰):

$(this).closest("tr").next().find(".accordionContent").slideDown();

在这里,closest()将走祖先链并匹配它找到的第一个<tr>元素,然后next()将匹配其下一个兄弟,最后find()带有class selector会返回您感兴趣的<div>元素。

顺便提一下,请注意严格来说,动画的持续时间不会"normal"。唯一支持的字符串是"fast"(200毫秒)和"slow"(600毫秒),任何其他字符串将被解释为400毫秒,就像您完全省略了参数一样。例如,slideDown("superFast")的行为与slideDown("normal")或普通slideDown()完全相同。