每个职能的孩子

时间:2013-01-19 19:06:51

标签: mootools el var css-selectors

我有疑问。 我为这些寻找解决方案。 想用儿童功能el。 但没有工作。 如果我清除el它的工作原理,但我最后有所有元素类。

Mootools脚本

 $$('ul#portfolio li, .ce_id').each(function(el) {  
                    if(!el.hasClass(filterVal)) {  
                        el.fade('out').setStyle('display', 'none').addClass('hidden');

                    } else {  
                      el.setStyle('display', 'block').fade('in').removeClass('hidden');
                      $$(el':nth-last-child((4n+4)').addClass('last');
                    } 

希望你们能帮助我。或者它不可能使用el或VAR:nth-​​last-child在一起?

更新但是没有效果。

              else {  
               el.setStyle('display', 'block').fade('in').removeClass('hidden');
               el.getElements(':nth-last-child(4n+4)').addClass('last');
             }

更新2:

这里是守则 所以我想当我点击打印时,每4个女巫都没有隐藏,并且有点击类的女巫最后获得该课程。 http://jsfiddle.net/6whd9/1/

最佳反馈

1 个答案:

答案 0 :(得分:1)

我正在减少代码,但你不能在选择器中el。相反,您应该使用el.getChildrenel.getElements。这是一个例子:

$$('#parent > div').each(function(el){
    el.getChildren(':nth-last-child(4n+4)').addClass('last');
});

以下是一个工作示例:http://jsfiddle.net/ZxMUh/

编辑:很难从你的问题中理解什么有用而不是有用。但是,如果您尝试动画,则不能将其淡入。您需要先隐藏它。

$$('#parent div.hidden').fade('hide');


$$('#parent > div').each(function (el) {
    el.removeClass('hidden').fade('in');
    el.getChildren(':nth-last-child(4n+4)').addClass('last');
});

以下是示例:http://jsfiddle.net/ZxMUh/2/

编辑(获得小提琴后):在我的例子中,我认为你在“li”中改变了nth-child。问题是你不能在你的每个陈述中做到这一点。把它分开。

以下是使用时的小提琴:nth-​​last-child:http://jsfiddle.net/6whd9/2/

但是,不可能做你想做的事情,在这种情况下使用:nth-​​child是不可能的。你必须自己做出选择。

 var visable = $$('ul#portfolio li:not(.hidden)').reverse();
 visable.each(function (item, index) {
     // same as 4n + 4
     if (index % 4 == 3) {
         item.addClass('last');
     }
 });

这是一个演示它的小提琴:http://jsfiddle.net/6whd9/4/ (我将最后一个类添加到带有红色边框的样式中,因此它是可见的)

我希望我终于明白你的问题......