jQuery - show()函数可以返回true吗?

时间:2011-03-03 15:41:18

标签: jquery

我使用jQuery创建了一个脚本,如:

$(document).ready(function() {
    $('a[name=pmRead]').click(function(e) {
        e.preventDefault();

        var pmtext=$(this).parents(".pmMain").find(".pmMain5");
    });         
});

现在,我想使用像pmtext.show()这样的函数,如果元素可见,则获取TRUE。否则,我想退回FALSE。使用show()获得TRUE / FALSE的任何更改? (或姐妹函数hide())。

6 个答案:

答案 0 :(得分:7)

有一项检查可见性的功能,但它不是show()/hide()

if (pmtext.is(':visible')) {
    // ....
}

答案 1 :(得分:3)

为什么不使用以下内容:

pmtext.is(":visible");

如果可见则提供布尔值true,否则提供false。相反,您可以使用pmtext.is(":hidden");

如果您想在可见的情况下执行某些操作,请尝试:

$(this).parents(".pmMain").find(".pmMain5:visible").hide();  // only finds it if visible

答案 2 :(得分:2)

如果您需要返回true或false,我建议编写自定义函数。

function customShow(element)
{
    if( $( element ).is( ':visible' ) )
        return true;

    $( element ).show();
    return false;
}

答案 3 :(得分:0)

您可以编写自己的简单函数,以检查其是否可见。

注意:该函数将jQuery元素作为输入。

function isVisible($element) {
   return $element.css("display").toLowerCase() != "none");
}

答案 4 :(得分:0)

你看过。toggle()方法了吗?它可以选择接受“showOrHide”参数。

答案 5 :(得分:0)

<script language="JavaScript">

function menu(bolum) {

if ( bolum.style.display =='none') { bolum.style.display='';islem.style.display='';} else {bolum.style.display='none';} }

</script>

<img src="images/biz-arayalim.png" onclick="menu(firmamesajkutusu)" style="cursor:pointer;"> <div name="firmamesajkutusu" id="firmamesajkutusu"></div>

旧系统javascript所有div kontrol功能