jQuery slideDown选择某个元素?

时间:2010-08-03 14:59:12

标签: asp.net jquery

我有一个jQuery函数,当像这样单击时对某个元素执行slideDown anitmation

$('.Minimize').click(function() {
            $('.ContentTD').slideUp('slow', function() {
                //animation complete
            });
        });

上述脚本是在Web用户控件中编写的。

问题是如果一个页面有很多控件实例,那么slideDown函数会在页面的所有实例中执行。

我希望只在我点击的控件中执行该功能。

怎么做? 感谢

1 个答案:

答案 0 :(得分:1)

你可以爬到他们所在的容器并找到相对的元素,如下所示:

$('.Minimize').click(function() {
   $(this).closest('.container').find('.ContentTD').slideUp('slow');
});

这假设标记是这样的:

<div class="container">
  <button class="Minimize">Minimize</button>
  <div class="ContentTD">Content</div>
</div>

只要两者都在某个容器中,您可以识别类或其他属性,就可以使用.closest().find()仅在中获取.ContentTD < / em>容器。或者,如果他们是兄弟姐妹,如上面的简单示例,.siblings('.ContentTD')有效,或某些其他 tree traversal method,则重点是使用$(this)({{ 1}}你点击了)并找到相对于那个的元素。