开发者

jQuery: Checking if next element exists

Is there a way to check if a next element exists? Check my code:

if($("#people .making-of .mask ul li.current").next("li") != null) {
    alert("Exists");
}
else {
    alert("Dont exists");
}

What am I doi开发者_如何学编程ng wrong? Thanks a lot!


Have you tried looking at .next('li').length?


Use jQuery .is(), using .is() you can even check what tag, class or ID next element have?

if($("#people .making-of .mask ul li.current").next().is('li')) {
    alert("Exists");
}
else {
    alert("Dont exists");
}


The briefest method is just:

if( $( ... ).next('li')[0] ) {

Since jQuery functions always return a jQuery object, it's never equal to null. But accessing a jQuery object like an array acts like you are using an array of DOM objects, so [0] will pull the first matched DOM element or null. Checking .length() against 0 works, as well.


Use the length method in jQuery:

if($(...).next().length > 0) {
    alert("Exists.")
} else {
    alert("Doesn't exist!")
}


if($("#people .making-of .mask ul li.current").next("li").length > 0) {
    alert("Exists");
}
else {
    alert("Dont exists");
}


Like the post above says, you need to check the length of the item. Jquery.next() will always return a jquery object, but if there is no next item, it will have a length of 0.

if($("#people .making-of .mask ul li.current").next("li").length > 0) {
    alert("Exists");
}
else {
    alert("Dont exists");
}


I think this is good to use like.

   if ($(this).nextAll().length > 0) { 

     alert("Exists");

   }else{

     alert("Don't exists");

   }
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜