【问题标题】:on click, check if div is open, if false - open using .show, if true do nothing单击时,检查 div 是否打开,如果为 false - 使用 .show 打开,如果为 true,则不执行任何操作
【发布时间】:2012-04-21 15:47:24
【问题描述】:

我正在使用 jquery .show 打开一个 div。我已经让它工作得很好,但是我在弄清楚如何让它检查div 是否已经打开时遇到了一些麻烦。如果是,我不希望它重复.show 函数。最好的方法是什么?

我现在使用的是(jquery + jquery ui)

$(document).ready(function() {
$('.content').hide(); 

$(".open").click(function () {
  $(".content").show("slide", { direction: "up" },1200);
});

$(".close").click(function () {
  $(".content").hide("slide", { direction: "up" },1200);
});

}); 

【问题讨论】:

标签: jquery jquery-ui show-hide


【解决方案1】:
if ($(".content").is(":visible") {
    // it is showing already
} ...

你也可以看看http://api.jquery.com/slideToggle/

¡¡¡FUN EXAMPLES HERE!!!

【讨论】:

    【解决方案2】:

    您可以使用:visible selector:hidden selector

    $(document).ready(function() {
        $('.content').hide();
        $(".open").click(function () {
            $(".content:hidden").show("slide", { direction: "up" }, 1200);
        });
        $(".close").click(function () {
            $(".content:visible").hide("slide", { direction: "up" }, 1200);
        });
    });
    

    另见my example

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-06
      • 2013-09-09
      • 1970-01-01
      • 2020-12-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多