0

我正在尝试使用 jQuery slideToggle() 函数来最小化一组表行。我遇到的问题是,虽然行集被最小化,但动画似乎没有生效。我认为这与我使用 slideToggle 的方式有关,在一组结果而不是父元素上调用它,但我不确定。

我正在使用这段 javascript 和 jquery 来最小化一组行。

$('td').on("click", "a.collection-minimize, a.list-minimize", function(event) {                                          
   event.stopPropagation(); 
   // Get the class of the following row
   var minimize_class = $(this).parent().parent().next().attr('class');                                                 
   // trim whitespace
   minimize_class = minimize_class.replace(/^\s\s*/, '').replace(/\s\s*$/, '');                                         
   // Minimize all following rows of the same class.
   $(this).parent().parent().siblings('.' + minimize_class).slideToggle();                                                 
});

一组示例行:

<tr class="collection-original">
    <td>
        <a class="collection-minimize" onclick="return false" href="#">Minimize collection</a>
    </td>
</tr>
<tr class=" collection-original" style="display: table-row;"></tr>                 
<tr class=" collection-original" style="display: table-row;"></tr>
<tr class=" collection-original" style="display: table-row;"></tr>
<tr class=" collection-original" style="display: table-row;"></tr>

可以在此处查看正在使用的实时页面:http: //iodocs.vky.me/whitehat#Application-API-PUT-Modify-an-application

4

1 回答 1

0

看到这个:http: //jsfiddle.net/DEPjD/

 minimize_class = minimize_class.replace(/^\s\s*/, '').replace(/\s\s*$/, '').trim(); 

或者:

minimize_class = minimize_class.replace(/^\s\s*/, '').replace(/\s\s*$/, '').replace(/ /g, ''); 
于 2013-03-06T18:27:27.903 回答