1

次のコード行は、2 つのことを行います。最初の 2 行は、指定された ID を持つ要素 (この場合は ID "nav" を持つ UL) の直前と直後の兄弟にクラスを追加します。

最後の 2 行は、クラス first と last を、親が ID "nav" を持つ最初と最後の兄弟要素に追加します。

これはjqueryです。Mootools 1.11 で同じことを達成するにはどうすればよいでしょうか。どんな助けでも感謝します。

$('#nav .active').prev().addClass('prevtab');
$('#nav .active').next().addClass('nexttab');
$('#nav').children(":first").addClass('first');
$('#nav').children(":last").addClass('last');

コメントでは書式設定が機能しないため、zombat について繰り返します。

mootools 1.1 の使用 使用できる編集ボタンがなく、十分な担当者がいないためコメントできません。

あなたのソリューションは何かをしていますが、正しい要素をターゲットにしていません。

これは私が望む結果であり、jqueryで取得しています:

<ul id="nav">
<li class="first"></li>
<li></li>
<li class="prevtab"></li>
<li class="active"></li>
<li class="nexttab"></li>
<li class="last"></li>
</ul>

これはあなたのjsの結果です:

<div class="prevtab"></div>
<ul id="nav">
<li></li>
<li></li>
<li></li>
<li class="active"></li>
<li></li>
<li></li>
</ul>
<div class="nexttab"><div>
4

2 に答える 2

3

これを試してみてください。

$('nav').getNext().addClass('nexttab');
$('nav').getPrevious().addClass('prevtab');
var c = $('nav').getChildren();
c[0].addClass('first');
c[c.length-1].addClass('last');

編集:現在作業中。

2 回目/3 回目の編集:

OK、.active クラスの使い方を誤解していました。これを試して:

var n = $('nav').getElement('.active').getNext();
if (n) n.addClass('nexttab');
var p = $('nav').getElement('.active').getPrevious();
if (p) p.addClass('prevtab');
var c = $('nav').getChildren();
c[0].addClass('first');
c[c.length-1].addClass('last');
于 2009-04-30T02:09:32.477 に答える
0
$each($$('#nav .active'),function(item){
                            item.getPrevious().classname='prevtab';
                         }
      );

これが最初の行です。

2番目にgetNextを使用できます
3番目に$('#nav')。getFirstを使用できます//子があることを確認してください...
4番目にgetLastを使用できます

于 2009-04-30T02:26:08.133 に答える