0

質問があります。私はこれらの解決策を探しています。子関数で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 liの魔女ごとに非表示にならず、クラスの魔女をクリックしてクラスを最後に取得する必要があります。 http://jsfiddle.net/6whd9/1/

最高のreagards

4

1 に答える 1

1

コードを少し減らしていますがel、セレクターではできません。代わりに、el.getChildrenまたはを使用する必要がありますel.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」のn番目の子を変更する場所を考えました。問題は、各ステートメントでそれを実行できないことです。分けてください。

: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/ (最後のクラスを赤い実線の境界線でスタイルに追加したので、表示されます)

私はあなたの質問を最終的に理解したと思います...

于 2013-01-19T19:57:54.617 に答える