按照w3c school的指引,jquery中,要获得一个元素的兄弟,可以用 prev()、next()两种方法。顾名思义,prev()获得前一个,next()获得后面一个。
问题是,如果存在前后兄弟,这俩方法可能会返回实打实的对象;如果是没有呢?返回啥?是null吗?
答案不是。你如果想用 if( $(“#div1”).prev() == null ) { alert(“没啦”);} ,注定会撞板。因为永远不会为null。
我试来又试去,最后是这样搞的:
if (typeof $("#div1").prev().html() == "undefined") {
alert("没啦");
}
最讨厌网上那些文章,一大抄,篇篇信誓旦旦,但只说些人所共知的东西,不实用,关键时刻靠不住。
获取兄弟的使用场景,比如说 页签。点击某个页签,那这个会不会是第一个或者最后一个?
=========================
其实也可以这样:
if ( $("#div1").prev().length == 0) {
alert("没啦");
}