jQuery if 语句检查可见性

标签 jquery if-statement hide show visible

我正在尝试编写一个脚本,该脚本将根据其他元素的可见性隐藏/显示 div。当我单击其他元素时,应该发生该操作。这是我到目前为止所写的内容:

$('#column-left form').hide();
    $('.show-search').click(function() {
        $('#column-left form').stop(true, true).slideToggle(300);
        if( $('#column-left form').css('display') == 'none' ) {
            $("#offers").show();
        } else {
            $('#offers').hide();
        }
    });

它隐藏了div,但当我隐藏表单时它不会回来。将不胜感激任何帮助:)

编辑:

好的,我这样写就达到了预期的效果:

$('#column-left form').hide();
    $('.show-search').click(function() {
        if ($('#column-left form').is(":hidden")) {
            $('#column-left form').slideToggle(300);
            $('#offers').hide();
        } else {
            $('#column-left form').slideToggle(300);
            $("#offers").show();
        }
    });   

我不知道它是否写得正确,但它可以工作;)感谢大家的帮助!

最佳答案

您可以使用 .is(':visible') 测试某些内容是否可见,并使用 .is(':hidden') 测试相反的情况:

$('#offers').toggle(!$('#column-left form').is(':visible')); // or:
$('#offers').toggle($('#column-left form').is(':hidden'));

引用:

关于jQuery if 语句检查可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8616020/

相关文章:

java - 是否可以使用按键监听器显示以前隐藏的 JFrame

javascript - 淡入淡出回调不起作用

jquery - 如何隐藏真棒字体图标以外的文本

java - 如何在数组中添加 40 以下的数字

javascript - 如果 src 为空则隐藏图像

jquery - 如果YouTube嵌入src为空,则jQuery隐藏div

javascript - 如何在单击模态按钮时调用另一个函数?

javascript - 如何使用 jquery 验证元素列表

python - 如何根据数据框中的单词检测分配点数/分数?

c - 是否存在 else if 语句?