jQuery – 如何选择隐藏/可见元素?

我正在尝试做多步forms,我有5个div(所有这些都是隐藏的)其中五个是表单的一部分所以我可以通过这样做获得第一个和最后一个div

var first = $("#new").children(":first").next(); var last = $("#back").prev('div'); 

“#new”是表单的id,“#back”是后退按钮的id。 单击NEXT按钮后,它显示first.next(); ,但它应该只在第一次工作,然后它应该显示可见的div的next()。

我怎么能得到那个div?

谢谢

编辑:我正在尝试这样做,因为我在第一个div上单击下一个然后它显示第二个div,然后在第三个div之后,但是我想做一个自动检测其中一个可见的函数。

您的问题有点令人困惑,但如果您想检查元素是否可见,那么您可以使用:hidden伪选择器:

 var first = $("#new").children(":first").nextAll(':hidden'); 

并且只找到可见元素:

 var first = $("#new").children(":first").nextAll(':visible'); 

文档:hidden : http : //api.jquery.com/hidden-selector/

文档:visible : http : //api.jquery.com/visible-selector/

这是一个演示: http : //jsfiddle.net/v8fKc/

注意我使用了.nextAll()而不是.next()因为后者只查找单个下一个元素,前者查看根选择后的所有兄弟元素。

.nextAll()文档: http : .nextAll()

 if ($('#theid:visible').length > 0) console.log('I Am Visible'); else console.log('I Am Not Visible'); 

发动机:

  $(this).is(':visible');