javascript - JQuery Toggle Slide – 当其他元素切换关闭时显示元素

标签 javascript jquery toggle slide

JSFiddle:http://jsfiddle.net/ncuacvcu/

默认显示DIV home

当我点击链接一/链接二时,DIV一/DIV二替换 DIV 主页。当我再次单击链接一/链接二时,DIV一/DIV二切换关闭,留下一个空的空白区域。我怎样才能让DIV home在那一刻再次显示?

同时,如果DIV one打开并且我单击LINK Two,我希望将DIV one替换为< strong>DIV 2(即不经过DIV home)。

这是我尝试过的(以及一些变体),但我无法让它工作:

 $("a#one_toggle").click(function()
         {
           $(".hideall").not(".one").slideUp();
           $(".one")slideToggle(function(){
               if($('#client1').is(':visible')){
                   $('#client0').SlideUp();
               } else{
                   $('#client0').SlideDown();
               }
         });
 });

预先感谢您的任何提示!

最佳答案

您需要使用slideToggle的回调并检查带有home类的div是否可见,然后显示它。

http://api.jquery.com/slidetoggle/

http://api.jquery.com/is/

$(function() {
    $("a#one_toggle").click(function() {
         $(".hideall").not(".one").slideUp();
         $(".one").slideToggle('slow', function() {
            showHome($('.one'));
         }); 
    });
           
    $("a#two_toggle").click(function() {
         $(".hideall").not(".two").slideUp();
         $(".two").slideToggle('slow', function() {
            showHome($('.two'));
         }); 
    });
});

function showHome(elementToCheck) {
    // now we know if the div to check is visible or not
    if (!$(elementToCheck).is(':visible')) {
        // the div is not visible so we show it
        $('.home').slideDown();
    }
}
.one,
.two {
  display:none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<a href="#" id="one_toggle">link one</a>
<a href="#" id="two_toggle">link two</a>

<div class="home hideall">
  home
</div>

<div class="one hideall">
  one
</div>

<div class="two hideall">
  two
</div>

关于javascript - JQuery Toggle Slide – 当其他元素切换关闭时显示元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48249579/

相关文章:

jquery - 在 jQuery 中从 div 开始选择下拉文本的正确方法是什么?

javascript - 替代包含元素之间空格的 jQuery text()?

javascript - 有 ID 的 mapStateToProps?

javascript - 查询 JavaScript 对象分组依据

javascript - 对齐 Highcharts 的 x 轴

javascript - Firebase - set() 而不是 update() 的良好用例

jquery - 如何使用 AngularJS 将 jQuery 事件绑定(bind)到动态内容

jquery - 使用 jQuery 查找可见元素的长度

Java/Android - 如何通过按下另一个按钮来改变切换按钮的状态?

android - 如何在我的游戏应用程序中禁用声音?