0

重複の可能性:
jQuery: 次の要素が存在するかどうかを確認しています

jqueryを使用してカスタムスライダーを実装しています。rightそこで、ユーザーが/leftキーをそれぞれ押したときに、次/前の画像をロードする機能を提供したいと考えています。

正常に動作していますが、カーソルがlast/first要素に達すると、それ以上の要素が見つからないため、コードが壊れます。私のコードは次のとおりです。

function movePointer(dir){
    var selected = $("#imgslider > ul > li > img.siddslideselected");
    console.log(selected);
    var selectedli = selected.parent();
    if(dir=='left'){
        var nabourele = selectedli.prev()
    }else if(dir=='right'){
        var nabourele = selectedli.next();
    }
    console.log(nabourele);
    if(nabourele){
        selected.removeClass('siddslideselected');
        nabourele.children().addClass('siddslideselected').trigger('click');
    }
}

カーソルの現在の位置が中央にある場合、すべて正常に機能しますが、カーソルが最初の要素にある場合、leftキーを押すとコードが壊れます。を確認して停止しようとしましたif(nabourele){が、機能していません。naboureleその場合のshowのコンソール ログ[]

次/前の要素が存在するかどうかをテストするにはどうすればよいですか?

4

1 に答える 1

1

lengthプロパティをテストする必要があります。

if ( nabourele.length )
于 2012-10-10T04:51:05.737 に答える