0

div我在其中很多之间只有一个可见。怎么能选呢?

以下代码在 localhost 中有效,但不能在线:

var page_div_visible = $(".gform_page").filter(":visible");

我知道可以divs使用 .each() 并使用 .is(":visible") 进行选择,但我更喜欢单行解决方案。不可能吗?

编辑:

html 看起来像这样:

<div id='gform_page_20_6' class='gform_page' style='display:none;'>
</div>
<div id='gform_page_20_7' class='gform_page' style='display:none;'>
</div>
<div id='gform_page_20_8' class='gform_page' >
</div>

编辑 2

不可能让它在线工作。这是最终的解决方案

var page_div_visible;

$(".gform_page").each(function(i){
    if ($(this).css("display") !== "none"){
        page_div_visible = $(this);
        return false;
    }
})

谢谢你的支持。-

4

2 回答 2

2

你为什么不这样做呢?

 var page_div_visible = $(".gform_page:visible");

http://jsfiddle.net/JoshuaPack/AtBx3/1/

于 2012-05-02T22:42:59.790 回答
0

您使用的是哪个版本的 jQuery?可能是您也与 $ 冲突或在代码之后向 div 添加类。

查看您的评论,它受到其他一些 js 代码的干扰,请尝试使用 jQuery 而不是 $

// at the very beginning of your main JavaScript file
var jQ = jQuery.noConflict();

// at the place where you are doing other stuff with $, like your issue
var page_div_visible = jQ(".gform_page:visible");
于 2012-05-03T18:55:04.687 回答