javascript - 使用 jQuery 切换元素可见性!

标签 javascript jquery

我有以下标记:

<div class="header">Text</div>
<div class="hiddenArea">sdsada</div>

<div class="header">Text2</div>
<div class="hiddenArea">sdsada</div>

以及以下 jQuery:

$('.header').click(function() {
        var t = $(this).next('.hiddenArea').slideToggle();
    });

当隐藏区域显示时,我想隐藏另一个隐藏区域(如果它可见)? 我想这样做,以便我可以添加其他 header 和隐藏区域(如果需要)。

更新:

谢谢大家,最终做到了这一点:

$('#messages .header').click(function() {
  if (!$(this).next().is(':visible')) {
    $('.hiddenArea').slideToggle();
  }
});

最佳答案

假设在呈现表单时您有一个可见的隐藏区域,这将起作用。 另请注意,您不需要 next 方法中的过滤器,因为 next 只会为您提供下一个同级。

$('.header').click(function() {
    var $el = $(this);
    if ( ! $el.next().is('visible') ){
       $('div.hiddenArea:visible').slideUp( function(){
           var t = $el.next().slideDown();
       });
    }
});

关于javascript - 使用 jQuery 切换元素可见性!,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1043299/

相关文章:

javascript - 不将所有依赖项包含在 useEffect 依赖项数组中是不是一种反模式?

javascript - navigator.credentials 在本地服务器上为空

javascript - 显示 :none doesn't work in jQuery

javascript - Mapbox 传单 setLayoutProperty

javascript - 根据动态生成的复选框多次显示相同的 div

javascript - 如何在jquery中计算两个输入文本值

javascript - ReactJS国际化(i18n)的react-intl与react-i18next

javascript - 将 django 变量传递给 javascript

jquery - 如何从 jQuery LineControl 编辑器获取文本区域值?

javascript - JQuery Accordion 在点击时一直移动到页面顶部