我正在尝试做多步形式,我有5个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, 但是我想做一个自动检测可见的功能。
答案 0 :(得分:4)
您的问题有点令人困惑,但如果您想检查某个元素是否可见,那么您可以使用: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://api.jquery.com/nextall
答案 1 :(得分:1)
if ($('#theid:visible').length > 0)
console.log('I Am Visible');
else
console.log('I Am Not Visible');
答案 2 :(得分:0)
旋转一下:
$(this).is(':visible');