3

常に削除され、他のdivに追加されているクラス「アクティブ」があります。しかし、それが最初または最後の子供に適用される場合、私はそれを削除したくありません...

JSFiddle: http: //jsfiddle.net/YuDDK/1/

HTML:

<div id="container">
<div class="item active"></div>
<div class="item"></div>
<div class="item"></div>
<div class="item"></div>
</div>

JS:

$('#container').mousewheel(function(event, delta) {
    var active = $('.active');

    if (delta > 0) {
        if (active.not(":first-child")) {
            active.removeClass('active').prev().addClass('active');
        }

    } else {
        if (active.not(":last-child")) {
            active.removeClass('active').next().addClass('active');
        }
    }

    $(this).scrollTo( $('.active'),100);
    return false;
});
4

1 に答える 1

5

active.not(":first-child")常にであるjQueryオブジェクトを返します。代わりに、ブール値を返すメソッドをtrue使用できます。is

if ( !active.is(":first-child") )
于 2013-01-19T14:18:42.880 に答える